Pairwise Testing (变量值对测试)
上一篇 / 下一篇 2009-08-27 10:41:46 / 个人分类:实践实战
关于测试有一条众所周知的普遍定律就是:没有100%覆盖的测试面。而另一方面的一个不争的事实却是:庞大的测试组合不可避免。举例来说,我曾经测过一个转码软件,该软件支持wmv格式的转码输出,对于wmv格式具体的设置参数包括这么几项:
codec:wmv-7, wmv-8, wmv-9, wmv-vc1
frame. size: 128x96, 176x144, 320x240, 352x288,
480x270, 640x480, 720x480, 720x576
frame. rate: 14.97, 15, 23.97, 25, 29.97
aspect ratio: 4:3, 16:9
bitrate mode: 1-pass CBR, 2-pass CBR,
2-pass VBR
所有的输出变量值的组合是:4x8x5x2x3=960
毫无疑问,这是一个比较大的测试覆盖组合,那么是每次测试都一条不落的执行一遍还是可以有其它方式呢?这时候一种称之为pairwise testing的测试方法就派上用场了。
这种测试方法不是去组合所有“变量值”而是组合所有“变量值对”。目前来说,没有什么软件理论能够论证这种测试方法的可行性,提出这种测试策略是基于如下假设:即大多数的软件缺陷要么是单模式缺陷(注一)要么是双模式缺陷(注二),而“变量值对”测试就是建立了一个同时测试单模式和双模式缺陷的最小子集,不过已记载的一些数据却说明了该方法的实际有效性。如:AT&T在对其基于局域网的邮件系统进行的测试中,应用pairwaise testing得到的1000条测试用例比其原有的1500条测试用例多抓出20%的缺陷而测试精力却减少了50%。National Institute of Standards and
Technology在一项对医疗设备测试所进行的15年追踪中发现,有98%的软件缺陷可以通过“变量值对”测试抓获。而另一项对Mozilla网页浏览器的缺陷分析显示,76%的缺陷可以通过“变量值对”测试抓获。
那么如何实际运用这种测试方法呢?两个途径。
第一,James Bach基于allpairs算法写了一个小工具可以用来生成“变量值对”表。这个工具可以从这里下载http://www.satisfice.com/tools.shtml。 这个exe工具用起来也很简单。首先在excel里把所有的变量以及可取值罗列如下:
codec | frame. size | frame. rate | aspect ratio | bitrate mode |
wmv-7 | 128x96 | 14.97 | 4:03 | 1-pass CBR |
wmv-8 | 176x144 | 15 | 16:09 | 2-pass CBR |
wmv-9 | 320x240 | 23.97 | 2-pass VBR | |
wmv-vc1 | 352x288 | 25 | | |
| 480x270 | 29.97 | | |
| 640x480 | | ||
| 720x480 | | ||
| 720x576 | | | |
存为.txt格式,然后将该txt文件(例如input.txt)放在和exe工具同一个目录下,进入命令行运行窗口,在exe工作目录下运行命令allpairs.exe input.txt > output.txt,回车,你会看到output.txt生成,将里面的内容全部拷贝到excel表格里即可。上面例子得出的结果如下:
case | codec | frame. size | frame. rate | aspect ratio | bitrate mode | ||||||||||||||||||||||||||||||||||||||||||||||||
1 | wmv-7 | 128x96 | 14.97 | 4:03 | 1-pass CBR | ||||||||||||||||||||||||||||||||||||||||||||||||
2 | wmv-8 | 128x96 | 15 | 16:09 | 2-pass CBR | ||||||||||||||||||||||||||||||||||||||||||||||||
3 | wmv-8 | 176x144 | 14.97 | 4:03 | 2-pass VBR | ||||||||||||||||||||||||||||||||||||||||||||||||
4 | wmv-7 | 176x144 | 15 | 16:09 | 1-pass CBR | ||||||||||||||||||||||||||||||||||||||||||||||||
5 | wmv-9
TAG:
清空Cookie -
联系我们 -
51Testing软件测试网 -
交流论坛 -
空间列表 -
站点存档 -
升级自己的空间
Powered by 51Testing
© 2003-2021
|