为什么要做探索性测试

上一篇 / 下一篇  2012-07-10 09:35:48 / 个人分类:杂谈

51Testing软件测试网pX{z$enF

  探索性测试是众多测试种类中的很基本的一种。凡是做过测试的人,都会有意识或无意识的做过探索性测试。

7j]^n@3Mm0

c$N&_/a#_1I2af0  但是探索性测试本身是什么意思呢?

bMw#Fh8A'}z0

n n]`$Ec*x/?8qv0  其实探索性测试正如它的名字一样,需要探索才知道测试的结果。这是一种测试设计与执行同步的测试。51Testing软件测试网D e6r:\KE

51Testing软件测试网~k JZ8L2@_Vj-o

  而且,下一步要做什么,很大程度上依赖于上一步测试的结果是什么。

r[7Y7i&LL7^C0

7H]1CC F M0  其实在业内,大家对于探索性测试没有给予太多的尊重。很多人可能会说,不就是手动测试嘛,有什么特别的,什么人都能做。

7xv[(RG5R~h051Testing软件测试网t+O1e,T {nR$O

  前半部分说对了,基本上就是手动测试。51Testing软件测试网*Tp.d`-`.Y[W(HMR

51Testing软件测试网#aZ8[z4D_ E)^a

  但是这可不是什么人都能做的。探索性测试不是ad hoc测试(随机测试)。需要系统的思考,需要设定比较具体的测试目标。

1_zJ`KQF051Testing软件测试网0O"B Y6l5R9t-f

  通常正确的做法是把有经验的人放去做探索性测试,而其他类型的测试(比如回归测试,随机测试等等)可以让稍欠经验的人来进行。

mO~j4Q/q_0

0V&[*\ h5Eh+k'\\0  很多公司都进行了自动化测试,为什么我们还需要探索性测试呢。51Testing软件测试网5c)t1W I-Y C2E

51Testing软件测试网.]._G4s5a_

  为了找到产品的风险,找到产品不稳定的地方。

DQqc5IV P0

!LA,gd3`3K ?y!R^L0   做IT这个行业的都知道,我们虽然是按着一个需求去做的,但是做出来的东西跟预期的差别总是存在。也就是我们所得到,跟我们所期望的不会完全匹配。我们 可能没有完全达到期望的,但是又开发出了一些附加的东西,这些附加的东西可以是bug,也可以是无伤大雅的特性,也可能是存在不稳定性的功能块。这些都是 需要找出来的。51Testing软件测试网-X.s9QL2z@o

51Testing软件测试网nr7K:hFxFO

  自动化测试往往实现的是你已经知道会发生什么了,你去assert那个期望值。51Testing软件测试网"X2E ~7Z6j*L|GZ

@1st%gQ.o'ZRdL0  探索性测试通常是,你不知道会发生什么,就去试试。

\#I R4v&H0

0hG1O A9dA U0  经验越多的人,试试的方向就更正确。51Testing软件测试网z5dg$EP6e+UG(l

m5mm;}LxD+v0  至于怎么做,其实根据产品本身的特征,可以有不同的做法。51Testing软件测试网^,_,} XXd S

cY/Ot0t(cL+F*^ a/]#\0  比如说你可以设定一个目标,说我想看看产品在一些边界条件下会怎么工作。然后通过输入边界条件来看是不是得到可接受的结果。51Testing软件测试网P%S*By*E6S zu+Et(T

B!P}@-q QB0  比如说你可以把目标设为“我想不断的重复这个添加删除操作看看产品怎么反应”,然后不断反复这个添加删除的动作,看看系统会不会有异常。

Aqsa9z!f\?051Testing软件测试网h4J8N-K7D\!S3X/H]

  比如说我想看看在批量查询的过程中随便点击查询窗口会怎么样,看看会不会发生系统停止响应。51Testing软件测试网9a0p1f2dUK)cl` R+LL

51Testing软件测试网&^6u4QiUP

  。。。51Testing软件测试网*C%Z$r a M1]ct

51Testing软件测试网'l_ E:p9N8Ys o(o

  正如探索性测试的初衷所说,我们要找到风险所在。在经过了一系列的尝试以后,我们就要给出相应的结论,什么地方出问题或者可能出问题,我们怎么样发现的(做了什么操作,用了什么数据,看到什么现象,等等)。51Testing软件测试网_osCo&X

*aV hU5Dl0  有时间会找个案例上来详细分析。51Testing软件测试网N#f Z4v qCku*X.G


TAG:

 

评分:0

我来说两句

Open Toolbar