冒烟测试


冒烟测试

在从开发团队接收构建软件时,冒烟测试就出现了。冒烟测试的目的是确定构建软件是否可测试。它是在“构建软件”时完成的。此过程也称为“第 0 天”。

这是一个节省时间的过程。它减少了测试时间,因为只有在应用程序的关键功能不工作或关键错误未修复时才进行测试。Smoke Testing 的重点是应用程序的核心和主要功能的工作流程。

在进行一轮深入、严格的测试之前(在检查所有可能的正值和负值之前)测试应用程序的基本和关键功能称为冒烟测试。

在冒烟测试中,我们只关注应用的正向流量,只输入有效数据,不输入无效数据。在冒烟测试中,我们验证每个构建是否可测试;因此它也被称为构建验证测试。

当我们进行冒烟测试时,我们可以在早期发现阻塞程序错误,这样测试工程师就不会闲着,或者他们可以进一步测试独立的可测试模块。

笔记:

  • 测试工程师知道该模块是可独立测试的,因为我们已经对它们进行了一轮冒烟测试。
  • 开发团队可以花时间修复bug,他们没有压力,因为测试团队没有闲着,发布不会被推迟,因此这是一个节省时间的过程。

进行冒烟测试的过程

冒烟测试不需要设计测试用例。只需要从已经设计好的测试用例中挑选所需的测试用例。

如上所述,Smoke Testing 专注于核心应用程序的工作流程;我们选择涵盖应用程序主要功能的测试用例集。应尽量减少测试用例的数量,执行时间不得超过半小时。

当我们进行冒烟测试时

一般来说,每当安装新版本时,我们都会进行一轮冒烟测试,因为在最新版本中,我们可能会遇到阻止程序错误。毕竟,可能有一些更改可能会破坏主要功能(修复错误或添加新功能可能会影响原始软件的主要部分),或者我们在安装发生的地方进行冒烟测试。

当稳定版本安装在任何地方(测试服务器、生产服务器和用户验收测试)时,我们会进行冒烟测试以找到阻止程序错误。

冒烟测试

让我们使用一些不同的场景,这有助于我们更好地理解何时进行冒烟测试:

场景一

开发者开发应用并交给测试团队,测试团队开始功能测试

假设我们假设我们有四天时间进行功能测试。第一天,我们检查一个模块,第二天,我们将去检查另一个模块。在第四天,我们发现了一个关键的 bug,把它交给了开发者;他/她说还需要两天时间来修复它。然后我们不得不推迟这额外两天的发布日期。

冒烟测试

为了克服这个问题,我们进行了冒烟测试,让我们看看它是如何工作的,在上述情况下,与其逐个模块进行彻底的测试并在最后提出关键错误,不如在我们走之前进行冒烟测试对于功能、集成和系统测试,即在每个模块中,我们必须测试基本或关键功能,然后继续进行进一步测试,如下图所示:

冒烟测试 冒烟测试

场景二

在进行功能测试时,如果测试工程师在早期就发现了主要的bug,有时开发人员在初期就不太适合发现主要的bug。因此,测试工程师将在进行功能、集成、系统和其他类型的测试之前进行冒烟测试。

在做冒烟测试时,测试工程师发现了主要的错误;他/她将提供给开发团队以修复错误。修复错误后,测试工程师将继续进行进一步测试,如下图所示:

冒烟测试

场景3

在这种情况下,如果我们已经执行了冒烟测试并发现了阻止程序错误并解决了该错误。进行系统测试后,我们会将应用程序从测试服务器发送到最终用户服务器进行一轮用户验收测试。当客户进行验收测试并没有发现任何问题并且对应用程序感到满意时,因为我们已经进行了冒烟测试。

冒烟测试

场景 4

验收测试完成后,应用程序将部署到生产服务器。我们已经在生产服务器上进行了一轮冒烟测试,以检查应用程序是否正确安装。如果任何真正的最终用户发现任何阻止程序错误,他们会被激怒并且不会再次使用该应用程序,这可能会导致客户业务的损失,如下图所示:

冒烟测试

为了以后不会遇到这个问题,开发组长,测试组长,会带着客户登录,做一轮冒烟测试。

例如,真实用户使用 Facebook 应用程序,每次我们内部更新新功能,而实际用户不会影响,因为他们不会意识到内部变化并正确使用应用程序。

在生产服务器中,冒烟测试可以由业务分析师 (BA)、开发团队经理、测试团队经理、构建团队和客户完成。

我们为什么要做冒烟测试?

  • 我们将进行冒烟测试以确保产品可测试。
  • 我们会在开始时进行冒烟测试,检测出基本功能中的错误并发送给开发团队,以便开发团队有足够的时间修复错误。
  • 我们进行冒烟测试以确保应用程序安装正确。

笔记:

  • 在应用程序开发的早期阶段,如果我们进行冒烟测试,它会获取更多的错误。但是在应用开发的后期,如果我们做冒烟测试,我们在冒烟测试中捕捉到的bug数量会非常少。因此,在冒烟测试上花费的精力通常较少。
  • 当我们对每个构建进行冒烟测试时?

每当安装新版本时,我们都会确保该版本可测试或不可测试,如果可测试,则我们执行冒烟测试,如下图所示:

冒烟测试

冒烟测试的类型

冒烟测试分为两种:

正式冒烟测试

在这种情况下,开发团队将应用程序发送给测试主管。然后测试负责人将指导测试团队进行冒烟测试并在进行冒烟测试后发送报告。测试团队完成冒烟测试后,会将冒烟测试报告发送给测试负责人。

非正式冒烟测试

在这里,测试负责人说应用程序已准备好进行进一步测试。测试负责人没有指定进行冒烟测试,但测试团队仍然通过进行冒烟测试来开始测试应用程序。

实时示例:

假设,我们正在使用一个电子商务网站,该网站的核心工作应该是登录,特定搜索,将商品添加到购物车,将商品添加到收藏夹,付款选项等。这里我们正在测试功能以放置一个命令。测试后,测试人员必须对应用程序功能的运行有把握和信心。

工作流程的步骤如下:

  • 点击项目
  • 描述页面应该是打开的。
  • 点击加入购物车
  • 购物车应该是打开的
  • 点击立即购买
  • 应显示付款选项。选择其中之一。
  • 订单已下

冒烟测试

如果此功能正常工作,则测试人员将通过它进行测试并测试同一应用程序的下一个功能。

冒烟测试的优势

  • 这是一个节省时间的过程。
  • 在早期阶段,我们可以找到错误。
  • 它将有助于恢复系统的质量,从而降低风险。
  • 执行测试很容易,因为它节省了我们的测试工作和时间。