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

上一篇 / 下一篇  2012-08-30 08:35:39 / 个人分类:杂谈

*j@1h pc7R| n@0h0  问题描述:

D$V7x"m5P0

+x'U4@![:D'e@ W0  测试中的“杀虫剂怪事”是指什么?

T@o/S/D5u \r j051Testing软件测试网if H_a%tY;O

  精彩答案:

x5` V^mu+Le0

r:QNZv3O:PtY0  会员 TesterChen:

h f1l(t BdC0

6C](L WS2B D0  杀虫剂怪事,本义是农业中随着农药的普及使用,害虫的抗药性越来越强,农药越来越难毒死害虫,害虫越来越容易滋生。51Testing软件测试网{-s-X a"T{

51Testing软件测试网 nvW3S+DF"`&_

  往往采用的办法是:换农药的品牌,购买新配方农药,购买其他品牌更好质量的农药,加重喷酒浓度51Testing软件测试网-~6y*sNq,?

51Testing软件测试网^B5X(I&P!T-NDq

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

,B6bJQ*Ba vrp g0

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

fE:Am+G@Zp%y0

j?-XM UU;G4u0  果树:我们的目标软件

` E^9u*dH6Q%^&N051Testing软件测试网!Z[0q`s?9z

  害虫:缺陷(Bug51Testing软件测试网y8L,FS8k`(_#Dsr

51Testing软件测试网u#U9O~ b9M+~4V

  农药:测试工程师、测试技术和方法51Testing软件测试网reA)jsW1l|

51Testing软件测试网9F@7^7~gxib SW

  现状:

V+Dg cv [bY051Testing软件测试网&LMBA5g3e9a

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

%rn*E pU"Q:k"p9w0  原因:

hC1h]T1ct(V+F?,xHg051Testing软件测试网]e@OG~6I1b%C

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

f4i"n HQ\051Testing软件测试网e,Z5BB6e"z7Hdw

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

O {J8fg6}:i0?9{051Testing软件测试网P_I E o;Y,t{!Q$j

  解决办法:

&[[ Z [c0

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

P/{'M-h8a5Oc;YS0

{g'Eqvlc ZVE0  (使用不同品牌的农药)

2y o2_xw&g2}&_V0

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

e v7r:c~Nk0

.Ux0l8_pQ"Vu(Qv0  (变更农药配方)

7g9Fa B6g-Q+Y {V@051Testing软件测试网u&i2|5[d(P6v%I4W

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

51Testing软件测试网6nY(Hq.MY

  (提升农药配方质量)51Testing软件测试网!P$l%OtOp\5Y P)f

51Testing软件测试网 k/mQ5G;Z'mA

  4、引进行业高水平技术人才,同时对技术人员进行相关技能培训提高专业技能51Testing软件测试网[6Z,B5D7A

51Testing软件测试网9Svp4k Pae

  (加重喷洒浓度)

1r z,lS6e!tE051Testing软件测试网 gzn*M#w5V*v]

  目的:

|N1Y_j7n7@051Testing软件测试网 Z2qg6|h!ht

  尽量多的发现潜在的缺陷,减少缺陷的遗留,降低遗留缺陷的严重度51Testing软件测试网%Jv`.Lj;Cqdc ]D

8yUI1@elEc.l0  会员 土土的豆豆:

y \ _4s)S^,m051Testing软件测试网vK:N;by]

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

8p9T(k+lyp Z*A#B}/yg0  这与农药杀虫是一样的。老用一种农药,害虫最后就有抵抗力,农药也就发挥不了效力。在用螺旋模式开发软件过程中,每一圈都要重复测试过程。软件 测试员每一个轮回就会接到软件进行测试。最后,经过几个回合之后,该发现的软件缺陷都被发现了,再测试下去也不会有新的发现了。51Testing软件测试网1j_c'v0H6VvB

l$oj'~ B^Pu$Y4|0  为了克服杀虫剂怪事,软件测试员必须不断编写不同的新测试程序,对程序的不同部分进行测试,以找出更多的软件缺陷。51Testing软件测试网;g(yViD)iD6O

51Testing软件测试网,J?e n3mx2l/N|

  我们可以充以下几个部门考虑如何规避和解决杀虫剂现象:51Testing软件测试网@m ` P q

4h;Y;bmyJ9A0  1、重新分析测试需求51Testing软件测试网r"}2ywYq

51Testing软件测试网7u&SoWs+j(] |&L

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

#hFZwN"G{#JN0

c0h2C\$]Tom0  2、拓展测试用例51Testing软件测试网kn3o8l5R

51Testing软件测试网's:vL_9P1o1n3YH

  显然,老套的用例即便执行白遍,也是一样的结果。根据新制定的测试需求,必须重新设计测试用例来进行检验。51Testing软件测试网 YG1N7]l$sKDW

1X5hB,L T3A1}j0  3、改变测试方法,加入更多的场景

~MNml0qku:s0

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

]Sv6}_k$_p:X;G051Testing软件测试网F$o'eIn E W

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

N(|5c`!f0

5w1?fGo4fGy0  5、缺陷问题整理和归纳51Testing软件测试网{f{ P5R,k8m

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

z/g N-{8gXe@0

B0aji1Xsj@3h8g0  以上是个人观点,请补充指正。51Testing软件测试网C0Sf _h.KM k

51Testing软件测试网l.JN+G Z-a'ZnF)I

  原帖地址:http://bbs.51testing.com/thread-792495-1-1.html51Testing软件测试网P q]+P-c1wX


TAG:

 

评分:0

我来说两句

Open Toolbar