测试用例设计技巧

来源:互联网 发布:数据报表怎么做好看 编辑:程序博客网 时间:2024/05/18 05:44

测试用例的深度和广度

说起测试用例的深度和 广度, 除了 需求本身 “显而易见”的 功能及非功能的用例外,很大程度依赖QA本身的经验和素质。 所以 ,针对同一个需求,不同测试人员设计的用例的深度和广度可能有较大差异。 

经验素质⭐️⭐️⭐️⭐️⭐️

影响程度⭐️⭐️⭐️⭐️⭐️


测试用例的技巧

测试实质: 在有限的时间内,发现有限的bug。所以, 如何在有限的时间内,尽快发现尽可能多的bug,保证产品的质量,是QA首页需要考虑的。 这里 主要说下项目中 参数较大时,需要进行参数组合测试的场景。

如何组合测试

方法一: 穷举法。 即 针对每个参数的每种值,进行组合, 例如 ,有三个参数, 每个参数 均有 三个不同的值,那么组合测试的用例数 = 3^3 = 27(种)
缺点: 用例数太多,随着参数的增多,造成会有大量的用例。

方法二:正交实验法。 为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。
正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的、有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。
正交表的构成
行数(Runs):正交表中的行的个数,即测试用例的个数。
因素数(因子Factors) :正交表中列的个数,即参数的个数。
水平数(状态Levels):任何单个因素能够取得的值的最大个数。正交表中的包含的值为从0到数“水平数-1”或从1到“水平数” 。

正交公式:
L(用例个数) = 参数值个数^参数个数

如何选择正交表
·         考虑因素(变量)的个数(参数的个数)
·         考虑因素水平(变量的取值)的个数(每个参数值的最大个数)
·         考虑正交表的行数(用例个数)
·         取行数最少的一个(取用例个数最少的一个)

例如,

名字: 填、不填

手机号:填、不填

身份证:填

 L = 参数值个数^参数个数 = 2^3 = 8;

例子:

http://blog.sina.com.cn/s/blog_457b98580102vd5h.html

5个参数,参数值个数最多有4个时,采用的正交表:


4个参数,每个参数最多3个值:


3个参数,每个参数最多3个值:


3个参数,每个参数最多2个值:


全对偶测试

测试设计中如果一个接口包括多个变量,对变量的可能组合进行测试时就需要组合测试。如果有三个变量A、B、C,每个变量存在三种可能的取值,A:a1 a2 a3,B:b1 b2 b3,C:c1 c2 c3,那么对组合情况完全覆盖共计有27个测试用例。显然测试用例有些冗余,而且写用例的时候也比较麻烦。如果按照两因素(Pairwise)组合测试,就可以抽取出有效测试用例,极大精简测试用例集。全对偶测试法的基本原则是每个变量的每个取值都要在至少一个用例中与每个其它变量的每个取值配对。也就是说必须包含不同变量中每个值的两两组合。那么上面的例子对偶测试用例为:


例如:

操作系统:Win 98 、Win XP、Win 7

打印机:HP 4050、HP 4100

是否双面打印:是、否

对应三个参数的所有组合情况就是12个测试用例。但是我们需要的是在一组测试用例中能够保证至少一个用例中的每个其他变量的每个取值都配对过。这种情况就可以得到较少的测试用例,我们就可以得到6个测试用例。


缺点:

事实上,如果这三个参数中的某两个参数的值的任意不同的组合会触发一个bug的话,那表格上的那组测试用例也可以发现该bug。当三个特殊的值组合在一起触发的某个bug,那表格上的那组测试用例不一定能发现该bug,但是至少我们覆盖了所有的全对偶(all pairs)。

为了能较好的使用allpairs工具,测试人员需要在表格上列出所有的参数和参数值,一般可以使用Excel工具来表达:

操作系统

打印机

是否双面打印

Win 98

HP 4050

Win XP

HP 4100

Win 7

  

介绍一个免费开源的工具allpairs.exe,请于下面这个链接里下载:

http://www.satisfice.com/tools/pairs.zip






0 0