1. 什么是冒烟测试
冒烟测试在从开发团队收到构建软件时出现。冒烟测试的目的是确定构建软件是否可测试。它是在“构建软件”时完成的。此过程也称为“第
0 天”。
这是一个节省时间的过程。它减少了测试时间,因为仅当应用程序的关键功能不起作用或关键错误未修复时,才会进行测试。冒烟测试的重点是应用程序的核心和主要功能的工作流。
在进行一轮深入、严格的测试(在检查所有可能的正值和负值之前)之前测试应用程序的基本和关键功能称为冒烟测试。
在冒烟测试中,我们只关注应用的正向流量,只输入有效数据,不输入无效数据。在冒烟测试中,我们验证每个构建是否可测试;因此,它也被称为构建验证测试。
当我们执行冒烟测试时,我们可以在早期阶段识别阻塞错误,这样测试工程师就不会闲置,或者他们可以继续测试独立的可测试模块。
注意:
测试工程师知道该模块是可独立测试的,因为我们已经对它们进行了一轮冒烟测试。
开发团队可以花时间修复错误,并且他们没有压力,因为测试团队不会闲置,并且发布不会推迟,因此这是一个节省时间的过程。 |
2. 进行冒烟测试的过程
冒烟测试不需要设计测试用例。只需从已设计的测试用例中选择所需的测试用例。
如上所述,冒烟测试侧重于核心应用程序的工作流程;我们选择涵盖应用程序主要功能的测试用例集。测试用例的数量应尽可能少,执行时间不得超过半小时。 3. 当我们进行冒烟测试时
通常,每当安装新版本时,我们都会执行一轮冒烟测试,因为在最新版本中,我们可能会遇到阻止程序错误。毕竟,可能会有一些更改可能破坏了主要功能(修复错误或添加新功能可能会影响原始软件的主要部分),或者我们在安装发生的地方进行冒烟测试。
当稳定版本安装在任何地方(测试服务器、生产服务器和用户验收测试)时,我们会进行冒烟测试以查找阻止程序错误。
让我们使用一些不同的场景,这有助于我们更好地了解何时进行冒烟测试:
场景 1
开发人员开发应用程序并移交给测试团队,测试团队将开始功能测试
假设我们假设有四天的时间进行功能测试。第一天,我们检查一个模块,第二天,我们将检查另一个模块。在第四天,当它交给开发人员时,我们发现了一个严重的错误;他/她说还需要两天时间才能修复它。然后我们必须推迟这两天的发布日期。
为了克服这个问题,我们进行冒烟测试,让我们看看它是如何工作的,在上述情况下,与其彻底逐个模块进行测试并在最后提出关键错误,不如在进行功能、集成和系统测试之前进行冒烟测试也就是说,在每个模块中我们必须测试基本或关键功能,
然后继续进行进一步测试,如下图所示:
场景 2
在进行功能测试时,如果测试工程师在早期阶段就发现了主要 bug,有时开发人员不适合在初始阶段发现重大
bug。因此,测试工程师将在进行功能、集成、系统和其他类型的测试之前执行冒烟测试。
在进行冒烟测试时,测试工程师发现了主要错误;他/她将提供给开发团队以修复错误。修复错误后,测试工程师将继续进行进一步测试,如下图所示:
场景 3
在这种情况下,如果我们已经执行了冒烟测试并找到了阻止程序错误并解决了该错误。执行系统测试后,我们会将应用程序从测试服务器发送到最终用户服务器进行一轮用户验收测试。当客户执行验收测试并且没有发现任何问题并对应用程序感到满意时,因为我们已经进行了冒烟测试。
场景 4
完成验收测试后,应用程序将部署到生产服务器。我们在生产服务器上进行了一轮冒烟测试,以检查应用程序是否正确安装。如果任何真正的最终用户发现任何阻止程序错误,他们会感到恼火,不会再次使用该应用程序,这可能会导致客户业务的损失,如下图所示:
对于以后不出现此问题,开发团队经理,测试团队经理,将带客户登录并进行一轮冒烟测试。
例如,真实用户使用Facebook应用程序以及每次我们在内部更新新功能时,实际用户不会受到影响,因为他们不会意识到内部更改并正确使用该应用程序。
在生产服务器中,冒烟测试可以由业务分析师 (BA)、开发团队经理、测试团队经理、生成团队和客户完成。
4. 我们为什么要进行冒烟测试?
- 我们将进行冒烟测试,以确保产品可测试。
- 我们将在开始时进行冒烟测试,并检测基本功能中的错误并将其发送给开发团队,以便开发团队有足够的时间来修复错误。
- 我们进行冒烟测试以确保应用程序安装正确。
注意:
在应用程序开发的早期阶段,如果我们在做冒烟测试,它会获取更多的错误。但是在应用程序开发的后期阶段,如果我们做冒烟测试,我们在冒烟测试中要捕获的
bug 数量会非常少。因此,通常花在冒烟测试上的精力较少。
当我们对每个版本进行冒烟测试时?
每当安装新版本时,我们都会确保该构建是否可测试,如果它是可测试的,那么我们执行冒烟测试,如下图所示:
|
5. 冒烟测试的类型
冒烟测试分为两种类型:
正式冒烟测试
在这种情况下,开发团队将应用程序发送给测试主管。然后,测试负责人将指示测试团队进行冒烟测试,并在执行冒烟测试后发送报告。测试团队完成冒烟测试后,他们将把冒烟测试报告发送给测试负责人。
非正式冒烟测试
在这里,测试主管表示应用程序已准备好进行进一步测试。测试线索未指定执行冒烟测试,但测试团队仍会通过执行冒烟测试来开始测试应用程序。
6. 实时示例:
假设,我们正在使用一个电子商务网站,并且该网站的核心工作应该是登录,特定搜索,将商品添加到购物车,将商品添加到收藏夹,付款方式等。在这里,我们正在测试下订单的功能。测试后,测试人员必须确定并确信应用程序功能的功能。
工作流的步骤如下:
- 点击项目
-
描述页面应处于打开状态。
-
点击加入购物车
-
购物车应打开
-
点击立即购买
-
应显示付款选项。选择其中之一。
- 下订单
如果此函数正常工作,则测试人员将在测试中传递它并测试同一应用程序的下一个函数。
7. 冒烟测试的优势
-
这是一个节省时间的过程。
-
在早期阶段,我们可以找到错误。
-
这将有助于恢复系统的质量,从而降低风险。
-
测试很容易执行,因为它节省了我们的测试工作量和时间。
|