冒烟测试是微软首先提出来的一个概念,与微软一直提倡的每日构建有很密切的关系.具体地说,冒烟测试就是在每日构建之后,对系统的基本功能时行简单的测试,冒烟测试这个名称的来历,大概是从电路板测试得来的,因为当电路板做好以后,首先会加电测试,如果板子没有冒烟则进行其他测试,否则电路板冒烟了,则证明电路板有重大缺陷需要重新设计和开发.
在软件开发中,冒烟测试的对象 是每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作.在持续集成的开发环境下,每天都会生成很多可用的Build,但是并不是每个Build都会送到测试人员或者客户去测试,以确认系统的基本功能.冒烟测试可以避免重要的严重错误被传送到测试人员或者客户手中,以免造成时间浪费和可能的不良印象.
冒烟测试的关键是要选择关键的测试用例,即选择能使整个系统基本运行的关键测试用例,冒烟测试是针对每一个Build进行的第一个测试,所以为了有效地进行冒烟测试,测试人员需要做到以下两个原则;
1.和开发人员紧密合作,了解开发人员在当前Build中改变了哪些部分代码,代码变更对功能的影响和代码变更对不同组件的互相依赖性的影响.
2.进行代码评审,在评审的过程中,仔细评审每一处代码变更可能带来的风险.