健全性测试与烟雾测试

测试简介

软件测试是检测软件产品是否满足规定要求和无缺陷的过程。执行它是为了评估软件的质量。它包括通过使用手动或自动方法执行软件/系统组件来评估一个或多个感兴趣的属性。与实际需求相比,软件测试的目的是检测错误、差距和缺失的需求。冒烟测试和健全性测试之间的区别是软件测试中最容易被误解的方面之一。关于这个问题有大量的可用信息,但大部分都是混淆的。下面的文章试图澄清这种情况。我们将在本次测试中了解软件测试中的健全性测试和冒烟测试。举个简单的例子,我们还将发现健全性测试和烟雾测试之间的主要区别。让我们先分别查看每个主题:-

健全性测试

健全性测试(有时称为回归测试的变体)通常在稳定版本上执行。当我们从开发团队收到软件版本(代码修改最少)时,我们进行了健全性测试。这是一个检查点,以查看构建的测试是否可以继续。换句话说,健全性测试可确保所有问题都已解决,并且不会因更改而出现新问题。健全性测试还确保对代码或功能的任何更改都不会影响与其链接的模块。因此,它只能用于可能受到影响的连接模块。

烟雾测试

当开发团队向您发送构建软件时,您需要进行一些冒烟测试。冒烟测试用于验证构建程序是否可测试。它是在您“创建软件”时完成的。这通常被称为“第 0 天”。这是一种节省时间的方法。它减少了测试时间,因为它只在应用程序的主要功能不工作或重要问题没有解决时才完成。应用程序的主要和主要功能的工作流程是 Smoke Testing 的重点。

烟雾测试是在进行一个全面、严格的测试循环之前(在验证所有可能的正面和负面结果之前)测试应用程序的基本和关键组件的过程。我们只关注烟雾测试过程中应用程序的正面流并进入只有真实数据,而不是无效数据。我们通过冒烟测试(也称为构建验证测试)验证每个构建是否可测试。当我们执行冒烟测试时,我们可以及早发现阻塞程序错误,让测试工程师要么继续测试独立的可测试模块,要么继续下一步。

主要区别是 -

  • 冒烟测试的目的是确保“稳定”,而健全性测试的目的是验证“合理性”。

  • 开发人员和测试人员都执行冒烟测试,但测试人员执行健全性测试。

  • 健全性测试评估新功能,例如错误补丁,而烟雾测试验证系统的关键功能。

  • 验收测试包括冒烟测试,而回归测试包括健全性测试。

  • 与冒烟测试不同,健全性测试没有记录或编写脚本。

  • 健全性测试仅验证单个组件,而烟雾测试则从头到尾验证整个系统。

基于两种优势的差异

健全性测试的优点:

  • 它有助于检测任何部署或编译问题。

  • 与其他软件测试方法相比,它的成本更低。

  • 它有助于快速检测核心功能中的故障。

  • 健全性测试不需要任何文档,因此可以在更短的时间内完成。

  • 因为它只集中在一个或几个功能领域,健全性测试将帮助我们在测试过程中节省时间和精力。

  • 健全性测试有助于检测缺失的依赖关系。

烟雾测试的优点 -

  • 这是一种节省时间的方法。

  • 我们可以在早期阶段找到错误。

  • 它将有助于恢复系统质量,降低风险。

  • 进行测试很简单,因为它节省了我们的时间和精力。

基于工艺的差异

健全性测试过程 -

健全性测试的主要目标是寻找组件方法中不存在的不准确结果或问题。此外,请确保新引入的功能不会干扰现有功能的功能。

因此,我们必须按照以下步骤逐步建立健全性测试程序 -

  • 鉴别

  • 评估

  • 测试

第一步是识别问题- 健全性测试过程的初始阶段是识别,在此阶段我们寻找新添加的组件和功能,以及在解决故障时所做的任何代码更改。

第二步是进行评估- 在识别过程之后,我们将检查和调整新开发的组件和属性,以确保它们按预期运行并符合指定的要求。

测试是第三步- 一旦识别和评估步骤令人满意地完成,我们将进行下一步,测试。

烟雾测试过程

  • 1) 手动

通常,烟雾测试是手动执行的,以确保导航顺利运行并且不会出现任何功能问题。

另一方面,冒烟测试因公司而异,根据requirements.When软件完成情况,将其发送给 QA,如果重要的功能测试用例run.If失败,则程序将提交给开发团队,开发团队将做出对软件进行必要的更改。

该程序将在更正后再次进行冒烟测试,并与之前的版本进行比较。

  • 2) 自动化系统

当时间有限且新版本已准备好部署时,可以利用自动化进行冒烟测试。可以使用预先录制的烟雾测试用例来测试构建。如果测试失败,可以进行必要的修正并在短时间内部署软件。

区别

烟雾测试健全性测试
Smoke Testing is used to ensure that the program's important functions are working properly.进行健全性测试以确保新功能和问题已得到解决。
The goal of this testing is to ensure the system's "stability" before moving on to more thorough testing.测试的目标是在进行更彻底的测试之前确保系统的“合理性”。
The developers or testers are in charge of this testing.在软件测试中,测试人员通常执行健全性测试。
Typically, smoke testing is recorded or written健全性测试经常是计划外和未记录的。
Acceptance testing includes smoke testing as a subset.回归测试是健全性测试的一个子集。
Smoke testing puts the entire system through its paces.在健全性测试期间,只测试整个系统的一个组件。
Smoke testing is similar to a routine physical examination.健全性测试类似于专门的健康检查。

要考虑的要点-

  • 健全性测试和冒烟测试是通过确定应用程序是否有缺陷而无法彻底测试来避免浪费时间和精力的两种方法。

  • 构建验证测试是在特定构建上运行的冒烟测试。