软件测试中的“杀虫剂怪事”是指什么?

上一篇 / 下一篇  2012-09-11 17:00:20

问题描述:

  测试中的“杀虫剂怪事”是指什么?

  精彩答案:

  会员 TesterChen:

  杀虫剂怪事,本义是农业中随着农药的普及使用,害虫的抗药性越来越强,农药越来越难毒死害虫,害虫越来越容易滋生。

  往往采用的办法是:换农药的品牌,购买新配方农药,购买其他品牌更好质量的农药,加重喷酒浓度

  软件测试行业中的“杀虫剂怪事”一词由Boris Beizer在1990年其编著的《Software Testing Techniques》第二版中提出。用于描述测试人员对同一测试对象进行的测试次数越多,发现的缺陷就会越来越少的现象。就像老用一种农药,害虫就会有免疫力,农药发挥不了效力。这种现象的根本原因就是测试人员对测试软件过于熟悉,形成思维定势。

  我们从三个方面来讨论软件测试行业中的杀虫剂怪事:果树、害虫和农药

  果树:我们的目标软件

  害虫:缺陷(Bug

  农药:测试工程师、测试技术和方法

  现状:

  随着软件项目的规模越来越大,越来越多的缺陷开始出现,我们的测试工程师不断的进行测试、不断的回归,但仍然发现每次测试仍然会暴露出很多的缺陷,无法达到理想的缺陷曲线;或交付使用后用户仍然会在使用中出现各种各样的缺陷,直接影响用户的使用体验和公司声誉

  原因:

  1、被测软件的功能和结构越来越复杂(害虫的抵抗力越来越强)

  2、测试人员、技术和方法的思维定势(使用同一种农药配方)

  解决办法:

  1、测试人员轮岗,一百个读者有一百个哈姆雷特(虽然俗但确是这样),一百个工程师也有一百种看法和想法,这样可以更好的避免个人思维定势

  (使用不同品牌的农药)

  2、尝试使用各种测试技术和方法进行测试,避免因为测试方法本身的覆盖度而导致测试遗漏

  (变更农药配方)

  3、测试人员的自我意识,要有意识的突破自己的思维定势,跳出原有的条条框框进行思考,这样或者能发现一些更深层次的缺陷

  (提升农药配方质量)

  4、引进行业高水平技术人才,同时对技术人员进行相关技能培训提高专业技能

  (加重喷洒浓度)

目的:

  尽量多的发现潜在的缺陷,减少缺陷的遗留,降低遗留缺陷的严重度

  会员 土土的豆豆:

  杀虫剂怪事,原指农业科技上的工作,现用于描述软件测试越多,其免疫力越强的现象;或者说,如果同样的case反复执行,对于一个特定软件来说,发现问题的概率会越来越低。

  这与农药杀虫是一样的。老用一种农药,害虫最后就有抵抗力,农药也就发挥不了效力。在用螺旋模式开发软件过程中,每一圈都要重复测试过程。软件测试员每一个轮回就会接到软件进行测试。最后,经过几个回合之后,该发现的软件缺陷都被发现了,再测试下去也不会有新的发现了。

  为了克服杀虫剂怪事,软件测试员必须不断编写不同的新测试程序,对程序的不同部分进行测试,以找出更多的软件缺陷。

  我们可以充以下几个部门考虑如何规避和解决杀虫剂现象:

  1、重新分析测试需求

  一个被测模块若在指定条件下完成了工作,若在一定周期内未能发现新问题。我们可以重新对需求文档进行分析,找出不同的业务逻辑。尤其是组合条件较复杂的逻辑和业务工作流。

  2、拓展测试用例

  显然,老套的用例即便执行白遍,也是一样的结果。根据新制定的测试需求,必须重新设计测试用例来进行检验。

  3、改变测试方法,加入更多的场景

  虽说测试用例执行是测试的关键,但是前期对测试模块的需求分析深入的话,在不同组合、条件下,模拟更多、更复杂的业务场景进行操作,可能会发现意想不到的问题。毕竟很多问题是在长时间操作,反复进行业务交互后才产生的。

  4、在模块功能稳定的情况下,适当补充非功能性测试,在易用性、可靠性、稳定性等质量指标下,系统容易暴露更多的状况,很多是用例未考虑的情况。

  5、缺陷问题整理和归纳

  很重要的是,不能老是停留在黑盒方法、等价类、边界值等通用的技术手段。软件开发技术是在不断发展,同时我们测试技术、方法等也该不断更新和补充新的知识。对于异常或罕见的问题,测试人员应该有所整理、分析与归纳,这样我们才能改善“杀虫剂”含金量,相对于以后的系统,更有作用了吧。

  以上是个人观点,请补充指正。

  原帖地址:http://bbs.51testing.com/thread-792495-1-1.html

版权声明:本文由会员TesterChen、土土的豆豆首发于51Testing软件测试论坛每周一问活动。


TAG:

 

评分:0

我来说两句

Open Toolbar