健全性测试与冒烟测试 – 它们之间的区别
冒烟测试和健全性测试之间的主要区别
- 冒烟测试的目标是验证“稳定性”,而健全性测试的目标是验证“合理性”。
- 冒烟测试由开发人员或测试人员执行,而健全性测试由测试人员执行。
- 冒烟测试验证系统的关键功能,而健全性测试验证新功能,如错误修复。
- 冒烟测试是验收测试的子集,而健全性测试是回归测试的子集。
- 冒烟测试有文档或脚本,而健全性测试没有。
- 冒烟测试验证整个系统端到端的功能,而健全性测试只验证特定组件。

什么是软件构建?
如果你正在开发一个只包含一个源代码文件的简单计算机程序,你只需编译和链接这个文件,就能生成一个可执行文件。这个过程非常简单。通常情况并非如此。一个典型的软件项目包含成百上千个源代码文件。从这些源文件创建可执行程序是一项复杂且耗时的任务。你需要使用“构建”软件来创建可执行程序,这个过程称为“软件构建”。
什么是冒烟测试?
冒烟测试是一种在软件构建后执行的软件测试技术,用于验证软件的关键功能是否正常工作。它在执行任何详细的功能测试或回归测试之前执行。冒烟测试的主要目的是拒绝有缺陷的软件应用程序,以便 QA 团队不会浪费时间测试损坏的软件应用程序。
在冒烟测试中,选择测试用例以覆盖系统最重要的功能或组件。目的不是进行详尽的测试,而是验证系统的关键功能是否正常工作。例如,一个典型的冒烟测试将是——验证应用程序是否成功启动,检查 GUI 是否响应等。
什么是健全性测试?
健全性测试是一种软件测试,在收到软件构建后,对代码或功能进行微小更改后执行,以确定缺陷已修复,并且由于这些更改未引入进一步的问题。目标是确定所提出的功能大致按预期工作。如果健全性测试失败,则拒绝该构建,以节省更严格测试所涉及的时间和成本。
目标“不是”彻底验证新功能,而是确定开发人员在生成软件时应用了一些合理性(健全性)。例如,如果你的科学计算器给出 2 + 2 = 5 的结果!那么,测试 sin 30 + cos 50 等高级功能就没有意义了。
冒烟测试和健全性测试的区别
以下是冒烟测试和健全性测试的区别
冒烟测试 | 健全性测试 |
---|---|
执行冒烟测试以确定程序的核心功能是否正常运行。 | 执行健全性测试以检查新功能/错误是否已修复。 |
此测试的目的是验证系统的“稳定性”,以便进行更严格的测试。 | 此测试的目的是验证系统的“合理性”,以便进行更严格的测试。 |
此测试由开发人员或测试人员执行。 | 软件测试中的健全性测试通常由测试人员执行。 |
冒烟测试通常有文档记录或脚本化。 | 健全性测试通常没有文档记录且未脚本化。 |
冒烟测试是验收测试的一个子集。 | 健全性测试是回归测试的一个子集。 |
冒烟测试从头到尾对整个系统进行测试。 | 健全性测试仅对整个系统的特定组件进行测试。 |
冒烟测试就像全身健康检查 | 健全性测试就像专科体检 |
关于冒烟测试和健全性测试的注意事项
- 健全性测试和冒烟测试都是通过快速确定应用程序是否存在严重缺陷而无法进行任何严格测试来避免浪费时间和精力的方法。
- 冒烟测试也称为测试人员验收测试。
- 对特定构建执行的冒烟测试也称为构建验证测试。
- 软件工程中最好的行业实践之一是在软件项目中进行每日构建和冒烟测试。
- 冒烟测试和健全性测试都可以手动执行,也可以使用自动化工具执行。当使用自动化工具时,测试通常由生成构建本身的过程启动。
- 根据测试的需要,你可能需要在软件构建中执行健全性测试和冒烟测试。在这种情况下,你将首先执行冒烟测试,然后继续执行健全性测试。在行业中,健全性测试的测试用例通常与冒烟测试的测试用例结合使用,以加快测试执行速度。因此,这些术语经常混淆和互换使用是很常见的。
如果视频无法访问,请点击此处