杀虫剂效应原本指农业中随着农药的普及使用,害虫对农药的抗药性就越来越强,农药就越来越难杀死害虫。
软件测试中的“杀虫剂效应”中最早是在《微软的软件测试之道》(( ̄_ ̄|||)这本书感觉是上个年代的了),书中对杀虫剂效应表述是:任何你用以防止或发现缺陷的方法都会留下一些残余的、更为微妙的缺陷,而对于这些缺陷而言,前面那些方法会统统失效。
我们把软件测试的杀虫剂效应放到农业中解释下:
农药:软件测试员
害虫:bug
农作物:被测软件
现状:
随着被测软件的规模越来越大,功能越来越复杂,越来越多的缺陷开始出现,我们的测试工程师对其进行不断的进行测试、不断的回归,但仍然发现每次测试仍然会发现很多的缺陷(测试无穷尽)。
原因:
1.被测软件越来越大,功能越来越复杂(害虫抵抗力越来越强)
2.测试人员思维定势,使用测试技术和方法单一(长期使用同一款农药)
解决方法:
- 交叉测试。测试团队成员对被测系统交叉模块测试。(使用不同品牌的农药)
- 测试人员提升自己能力,掌握新技能,新思想,新方案。用更多测试技术提高测试覆盖率。(修改农药配方,提升配方质量)
- 引入更高级测试人员,同时对现有技术人员进行技能培训。(提高使用农药浓度)
so....
永远不要停止测试,永远不要停止思考,永远不要相信某一种方法或者工具可以帮助你解决所有问题!在这岗位上就不要停止学习新的技术和方法!