什么是烟雾测试?

什么是烟雾测试

烟雾测试 是一个软件测试过程,用于确定部署的软件版本是否稳定。冒烟测试是 QA 团队进行进一步软件测试的确认。它由在每个版本上运行的一组最小测试组成,用于测试软件功能。冒烟测试也称为“版本验证测试”或“置信度测试”。

简单来说,冒烟测试意味着验证重要功能是否正常工作,并且正在测试的版本中没有出现任何问题。这是对主要功能的小型快速回归测试。这是一项简单的测试,表明产品已准备好进行测试。这有助于确定版本是否存在缺陷,从而避免进一步的测试浪费时间和资源。

竞品对比 冒烟测试与健全性测试

我们什么时候进行烟雾测试

每当开发软件的新功能并将其与部署在 QA/staging 环境中的现有版本集成时,就会进行冒烟测试。它确保所有关键功能是否正常工作。

烟雾测试

在这种测试方法中,开发团队在 QA 中部署构建。采用测试用例的子集,然后测试人员在构建上运行测试用例。QA 团队针对关键功能测试应用程序。这一系列测试用例旨在揭示构建中的错误。如果这些测试通过,QA 团队将继续 功能测试.

任何故障都表明需要将系统交回开发团队处理。每当构建发生变化时,我们都会进行冒烟测试以确保稳定性。

例如:: - 在登录窗口中添加了新的注册按钮,并使用新代码部署了版本。我们对新版本进行了冒烟测试。

冒烟测试使构建符合进一步正式测试的条件。冒烟测试的主要目的是检测早期的主要问题。冒烟测试旨在证明系统稳定性和符合要求。构建包括实现一个或多个产品功能所需的所有数据文件、库、可重复使用的模块、工程组件。

如果我们不进行烟雾测试会发生什么

如果我们不在早期阶段进行烟雾测试,那么在后期阶段可能会遇到缺陷,而这会造成高昂的成本。 缺陷 在后期阶段发现的问题可能会影响交付成果的发布。

谁将进行烟雾测试

将构建版本发布到 QA 环境后,QA 工程师/QA 主管将执行冒烟测试。每当有新构建版本时,QA 团队都会确定应用程序中的主要功能以执行冒烟测试。QA 团队会检查正在测试的应用程序中是否存在问题。

在开发环境中对代码进行测试,以确保在将构建版本发布给 QA 之前应用程序的正确性,这称为健全性测试。它通常是狭义和深度测试。这是一个验证正在开发的应用程序是否满足其基本功能要求的过程。

健全性测试决定开发阶段的完成度,并​​决定软件产品是否通过进一步的测试阶段。

我们为什么要进行烟雾测试?

冒烟测试在软件开发中起着重要作用,因为它可以在初始阶段确保系统的正确性。通过这种方式,我们可以节省测试工作量。因此,冒烟测试使系统处于良好状态。一旦我们完成冒烟测试,我们就可以开始功能测试。

  • 通过执行烟雾测试,可以识别构建中的所有障碍。
  • 烟雾测试是在将构建版本发布给 QA 后进行的。借助烟雾测试,大多数缺陷在初始阶段就被识别出来 软件开发.
  • 通过烟雾测试,我们简化了主要缺陷的检测和纠正。
  • 通过烟雾测试,QA 团队可以发现新代码可能出现的应用程序功能缺陷。
  • 烟雾测试发现重大严重缺陷。

例如1: 日志窗口:单击提交按钮后,可以使用有效的用户名和密码移动到下一个窗口。

例如2: 用户无法从网页退出。

如何进行烟雾测试?

冒烟测试通常是手动进行的,尽管也可以通过自动化来完成。不同组织的情况可能有所不同。

手动烟雾测试

一般来说,冒烟测试是手动完成的。不同组织采用的方法也不尽相同。进行冒烟测试是为了确保关键路径的导航符合预期,并且不会妨碍功能。一旦将构建发布给 QA,就需要采用高优先级功能测试用例并进行测试,以查找系统中的关键缺陷。如果测试通过,我们将继续进行功能测试。如果测试失败,则拒绝构建并发回开发团队进行更正。QA 再次使用新构建版本开始冒烟测试。冒烟测试在新构建上执行,并将与旧构建集成以保持系统的正确性。在进行冒烟测试之前,QA 团队应检查构建版本是否正确。

通过自动化进行冒烟测试

自动化测试 是用来 迭代测试。但是,我们也可以使用一组自动化测试用例来运行 Smoke Test。借助自动化测试,开发人员可以在有新构建准备部署时立即检查构建。

每当部署新的软件版本时,无需手动重复测试,而是针对版本执行记录的冒烟测试用例。它可以验证主要功能是否仍然正常运行。如果测试失败,他们可以立即纠正版本并重新部署版本。这样,我们可以节省时间并确保 QA 环境的构建质量。

测试工程师使用自动化工具记录软件构建中执行的所有手动步骤。

烟雾测试周期

下面的流程图显示了如何执行冒烟测试。一旦构建部署到 QA 中,并且冒烟测试通过,我们就会进行功能测试。如果冒烟测试失败,我们将退出测试,直到构建中的问题得到解决。

烟雾测试周期
烟雾测试周期

烟雾测试的优点

这里列出了烟雾测试的一些优点。

  • 易于执行测试
  • 缺陷将在早期阶段被发现。
  • 提高系统质量
  • 降低风险
  • 进步更容易实现。
  • 节省测试精力和时间
  • 轻松检测严重错误并纠正错误。
  • 它运行得很快
  • 最大限度地降低整合风险

烟雾测试用例示例

財產編號 测试场景 商品描述 测试步骤 预期结果 实际结果 状态
1 有效的登录凭据 测试 Web 应用程序的登录功能,以确保注册用户可以使用用户名和密码登录 1.启动应用程序
2.导航至登录页面
3.输入有效的用户名
4.输入有效密码
5.点击登录按钮
登录应该成功 不出所料 通过
2 添加项目功能 能够将商品添加到购物车 1.选择类别列表
2.将商品添加到购物车
商品应添加到购物车 商品未添加到购物车 失败
3 注销功能 检查注销功能 1. 选择退出按钮 用户应该能够退出。 用户无法退出 失败

总结

在软件工程中,应该对每个构建都进行冒烟测试,因为它有助于在早期阶段发现缺陷。冒烟测试活动是软件构建进入系统阶段之前的最后一步。必须对每个要进行测试的构建进行冒烟测试。这适用于系统的新开发和主要版本和次要版本。

在进行冒烟测试之前,QA 团队必须确保被测应用程序的构建版本正确。这是一个简单的过程,只需花费最少的时间来测试应用程序的稳定性。

冒烟测试可以最大限度地减少测试工作量,并可以提高应用程序的质量。冒烟测试可以手动或自动进行,具体取决于客户和组织。