`
liudaoru
  • 浏览: 1575859 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

什么是冒烟测试

    博客分类:
  • java
阅读更多

很好玩的概念,说白了就是校验是否达到最低的要求。。。

 

From:http://tech.it168.com/a2009/0131/264/000000264024.shtml

 

    关于冒烟测试,应该是微软首先提出来的一个概念,和微软一直提倡的每日build有很密切的联系。具体说,冒烟测试就是在每日build建立后,对系统的 基本功能进行简单的测试。这种测试强调功能的覆盖率,而不对功能的正确性进行验证。从这一点看和所谓的“接受性(验收)测试(Acceptance Test)”非常相似。不同之处就在于他们执行的频率和被测的版本不同。 
    
    至于冒烟测试这个名称的来历,大概是从电路板测试得来的。因为当电路板做好以后,首先会加电测试,如果板子没有冒烟在进行其它测试,否则就必须重新来过。类似的如果冒烟测试没有通过,那么这个build也会返回给开发队伍进行修正,测试人员测试的版本必须首先通过冒烟测试的考验。

    冒烟测试的说法据说是:

    就象生产汽车一样,汽车生产出来以后,首先发动汽车,看汽车能否冒烟,如果能,证明汽车最起码可以开动了。说明完成了最基本的功能。

    冒烟测试一般用于每日构建(Nightly build),构建服务器首先从CVS服务器上,下载最新的源代码,然后编译单元测试,运行单元测试通过后,编译可执行文件,可执行文件若可运行,并能执 行最基本的功能,则认为通过了冒烟测试,这时,构建服务器会把程序打包成安装文件,然后上传到内部网站,第二天一早,测试人员来了以后,会收到构建服务器 发来的邮件提示昨晚是否构建成功。若构建成功,则测试人员进行相关的功能测试。所有这些功能的完成,一般是靠编写脚本完成的,目前比较常用的脚本有 TCL,Perl,Python及功能弱弱的批处理。用这些可以完成系统的每日构建。

    简单的说,就是先保证系统能跑的起来,不至于让测试工作做到一半突然出现错误导致业务中断。目的就是先通过最基本的测试,如果最基本的测试都有问题,就直接打回开发部了,减少测试部门时间的浪费

    冒烟测试准则

    在软件中,“冒烟测试”这一术语描述的是在将代码更改签入到产品的源树中之前对这些更改进行验证的过程。在检查了代码后,冒烟测试是确定和修复软件缺陷的最经济有效的方法。冒烟测试设计用于确认代码中的更改会按预期运行,且不会破坏整个版本的稳定性。

    注意:“冒烟测试”这一术语源自硬件行业。该术语源于此做法:对一个硬件或硬件组件进行更改或修复后,直接给设备加电。如果没有冒烟,则该组件就通过了测试。

    下面的准则描述了冒烟测试的最佳做法。遵循准则的效果会有很大的不同,从增强团队成员之间的交流,到形成特定的使用测试和调试工具的方式等。

    与开发人员协同工作
    由于冒烟测试特别关注更改过的代码,因此必须与编写代码的开发人员协同工作。必须了解以下内容:

    ·  代码中进行了什么更改。若要理解该更改,必须理解使用的技术;开发人员可以提供相关说明。

    ·  更改对功能有何影响。

    ·  更改对各组件的依存关系有何影响。

    在进行冒烟测试前检查代码

    在运行冒烟测试前,进行侧重于代码中的所有更改的代码检查。代码检查是验证代码质量并确保代码无缺陷和错误的最有效、最经济的方法。冒烟测试确保通过代码检查或风险评估标识的主要的关键区域或薄弱区域已通过验证,因为如果失败,测试就无法继续。

    在干净的调试版本中安装私有二进制文件

    由于冒烟测试必须侧重于仅对更新后的二进制文件中的功能更改进行验证,所以必须通过使用被测试文件的调试二进制文件来使测试在干净的测试环境中运行。

    注意

    在冒烟测试中,使用不匹配的二进制文件进行测试是一个常见错误。为了避免此错误,当两个或多个更新后的二进制文件之间存在依赖项时,请在测试版本中包括所有更新后的二进制文件。否则,测试的结果可能无效。

    创建每日构建 (Daily Build)

    每日构建要求团队成员协同工作,并鼓励开发人员彼此保持同步。如果新版本的迭代被延迟,则该延迟很容易导致具有多个依赖项的产品不同步。遵循每日构建和冒烟测试的过程,任何更改过的或新的二进制文件都可确保实现高质量。

    有关设置重复版本的更多信息,请参见在Team Foundation Build 中运行生成。有关验证产品版本的更多信息,请参见如何:配置和运行生成验证测试 (BVT)。

    注意

    将高质量的每日构建作为团队最重要的任务。如果由于签入代码未进行冒烟测试而导致版本中断,则需要开发人员和测试人员停止所有其他工作,直到问题被解决为止。对导致中断版本的人员的处罚不应该很重,但这个处罚一定要能强调这样一个道理:正确的每日构建是团队最重要的任务。

    不需要执行穷举测试。冒烟测试的目的不是确保二进制文件100% 没有错误。这样需要花费太多的时间。执行冒烟测试是为了在高级别验证版本。要确保二进制文件中的更改不会破坏常规版本的稳定性,也不会导致功能中出现严重错误。

    Web测试和负载测试

    生成Web测试和负载测试时,在运行任何时间长、工作量大的测试之前运行冒烟测试是一种很好的做法。在Web测试和负载测试中,冒烟测试时间短,工作量也小。使用冒烟测试是为了在运行性能测试或压力测试之前,确保一切都已正确配置并可按预期运行。

分享到:
评论

相关推荐

    测试模版文档_冒烟测试规范

    冒烟测试的流程包括团队协作流程、冒烟用例模版、冒烟测试用例选择原则、冒烟测试时间安排、冒烟测试准入条件、冒烟测试准出标准、测试结论等几个方面。 四、冒烟测试用例选择原则 冒烟测试用例的选择原则包括提交...

    软件测试文档模版_冒烟测试报告

    软件测试文档模版_冒烟测试报告 软件测试文档模版_冒烟测试报告是软件测试中的一种重要文档,旨在对软件系统进行冒烟测试,验证其基本功能是否能够正常运行。下面是关于软件测试文档模版_冒烟测试报告的知识点: ...

    冒烟测试模板

    冒烟测试,也被称为预提交测试或基础稳定性测试,是一种在进行详尽的系统测试之前进行的初步测试,目的是确认软件的基本功能是否可执行,确保软件的核心部分在进一步的测试中不会崩溃。以下是一个详细的冒烟测试模板...

    冒烟测试报告模板(Excel整理)

    冒烟测试:变更履历,概述,冒烟测试跟踪表,总结

    冒烟测试--如何对系统进冒烟测试

    冒烟测试,又称为预测试或基础稳定性测试,是一种快速检查新版本软件基本功能是否正常的初步测试。这种测试方法源于软件开发过程中,旨在确保在进行深入的系统测试之前,软件的核心功能能够正常运行,避免浪费时间和...

    冒烟测试和猴子测试

    ### 冒烟测试 冒烟测试这一术语最早源自硬件领域,尤其在电子设备的制造过程中。当一块新的电路板制作完成后,工程师们首先会给它通电。若电路板没有出现问题(比如冒烟),则可以进一步进行更为详尽的测试;反之,...

    冒烟测试的一些示范性质的用例

    冒烟测试的一些示范性质的用例。 在软件中,“冒烟测试”这一术语描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过程。在检查了代码后,冒烟测试是确定和修复软件缺陷的最经济有效的方法。冒烟...

    回归测试、冒烟测试

    回归测试和冒烟测试是软件测试中的两种重要策略,它们在确保软件质量方面扮演着关键角色。在这篇文章中,我们将深入探讨这两种测试方法的定义、目的以及如何在实际工作中有效地运用它们。 首先,回归测试是一种确保...

    冒烟测试与回归测试的介绍

    冒烟测试与回归测试的介绍 冒烟测试是微软首先提出来的一个概念,与微软一直提倡的每日build(构建版本)有很密切的联系。冒烟测试就是在每日build(构建版本)建立后,对系统的基本功能进行简单的测试。这种测试...

    华为软件精英挑战赛冒烟测试

    冒烟测试,也被称为预提交测试或基础稳定性测试,是一种在进行详尽的系统测试之前进行的初步测试,目的是确保软件的基本功能能够正常运行。在华为软件精英挑战赛中,冒烟测试扮演着至关重要的角色,它为参赛者提供了...

    软件冒烟测试用例模块

    软件开发人员冒烟测试用例模板,在实际项目中总结出来的,可做参考

    华为软件精英大赛冒烟测试工具

    参加华为软件精英大赛的冒烟测试工具

    软件测试面试题.pdf

    5. 什么是冒烟测试? 6. 区分静态测试和动态测试。 7. 什么是缺陷(bug)? 8. 缺陷生命周期是什么样的? 9. 什么是测试用例?一个好的测试用例应包含哪些内容? 10. 什么是测试计划? ### 测试类型 11. 描述单元...

    北京邮电大学袁玉宇软件测试与质量保证课件(1-5)

    _ctest.mht、1什么是冒烟测试?_Flying Dream.mht**:这两个文件可能解释了冒烟测试的概念,它是初步验证软件核心功能是否可执行的一种快速测试,通常在大规模测试之前进行。 6. **成绩录入模块测试用例表.png、...

    自动化冒烟测试:Unittest vs Pytest框架

    自动化冒烟测试:Unittest vs Pytest 框架 自动化冒烟测试是软件测试中的一种重要方法,旨在快速验证软件的基本功能是否正常工作。在 Python 中,有两种常用的自动化冒烟测试框架:Unittest 和 Pytest。本文将详细...

    SDN洛川冒烟测试(SDN专题)

    SDN洛川冒烟测试

    Hi3861_海思官方_单板冒烟测试指南1

    【Hi3861_海思官方_单板冒烟测试指南1】 本文档是针对Hi3861V100和Hi3861LV100单板的冒烟测试指南,旨在帮助技术支持工程师、软件开发工程师以及软件测试工程师快速验证产品的基本功能。该文档由上海海思技术有限...

    软件测试面试题.docx

    什么是冒烟测试?** 冒烟测试是一种轻量级的测试形式,在新版本或新功能开发完成之后,对基本功能进行初步验证,确认软件是否值得进一步测试。如果冒烟测试失败,则表明存在严重问题,需要修复后再进行更深入的...

    基于Python的星云生产环境冒烟测试自动化UI测试设计源码

    该自动化测试项目利用Python语言,针对星云生产环境进行冒烟测试的UI测试设计,源码包共包含66个文件,涵盖19个Python脚本文件、16个Xmind思维导图文件、4个Pak文件、3个Zip压缩文件、3个Jpg图片文件、2个Svg矢量...

Global site tag (gtag.js) - Google Analytics