这是一种新的设计用例的方法,其实我们都想问为什么要用这种方法去设计用例,认真了解后才知道,用这种方法可以减少 测试的时间及成本,其实我也没有真正用过这种方法,所以下面的用例也是抄拿别人的.



  据我了解利用正交表设计 测试用例也是正义矩阵测试策略Orthogonal Array  Testing Strategy ( OATS).


   


Strength:相互关系数,这里面是2,意思就是每两个变量之间的关系,如果是3的话就意味着需要三个变量之间的组合,如果是这样的情况用例数会极速增加.


Factors:就是矩阵的列数,一般来说是有多少个变量.


Level水平(位级):在试验范围内,因素被考察的值称为水平(变量的值),下面的例子里是2.

行数(runs):正交表中的行的个数,即试验的次数.

正交表通常的表达式是:

正交试验法设计测试用例的步骤:

确定有哪些因素(变量)

每个因素有哪几个水平(变量的取值)

选择适合的正交表

把变量的值映射到表中

把每一行的各因素水平的组合做为一个测试用例

加上你认为可疑且没有在表中出现的组合

如何选择正交表:

考虑因素(变量)的个数

考虑因素水平(变量的取值)的个数

考虑正交表的行数

取行数最少的一个

设计测试用例会碰到3种情况:

因素数(变量)、水平数(变量的取值)相符

因素数不相同

水平数不相同

因素数(变量)、水平数(变量的取值)相符:水平数(变量的取值)相同、因素数(变量)刚好符合正交表

例子:

有三个查询条件:企业名称,通讯地址,联系电话

只考虑查询条件填与不填,下面来设计测试用例

确定因素数和水平数:
有三个因素数:企业名称,通讯地址,联系电话
每个因素有两个水平:企业名称(填,不填),通讯地址(填,不填),联系电话(填,不填)

选择正交表:
表中的因素数>=3
表中至少有三个因素的水平数>=2
行数取最少的一个
结果:L4(23

变量映射:
企业名称:0(填),1(不填)
通讯地址:0(填),1(不填)
联系电话:0(填),1(不填)


用正交表设计测试用例:
测试用例如下:
填写企业名称、填写通讯地址、填写联系电话
填写企业名称、不填通讯地址、不填联系电话
不填企业名称、填写通讯地址、不填联系电话
不填企业名称、不填通讯地址、填写联系电话
增补测试用例:
不填企业名称、不填通讯地址、不填联系电话
测试用例减少数:8->5


因素数不相同:

水平数(变量的取值)相同但在正交表中找不到相同的因素数(变量)(取因素数最接近但略大的实际值的表)

例子:使用我们一开始讲的那个企业情况查询的例子。


确定因素数和水平数:
有三个因素数:地区,企业名称,企业代码,批准日期,注册资本
每个因素有两个水平:地区(填,不填),企业名称(填,不填),企业代码(填,不填),批准日期(填,不填),注册资本(填,不填)

选择正交表:
表中的因素数>=5
表中至少有三个因素的水平数>=2
行数取最少的一个
结果:L8(27

变量映射:
地区:0(不填),1(填)
企业名称:0(不填),1(填)
企业代码:0(不填),1(填)
批准日期:0(不填),1(填)
注册资本:0(不填),1(填)



用正交表设计测试用例:
测试用例如下:
地区填写,企业名称填写,企业代码填写,批准日期填写,注册资本填写
地区填写,企业名称填写,企业代码填写,批准日期不填,注册资本不填
地区填写,企业名称不填,企业代码不填,批准日期填写,注册资本填写
地区填写,企业名称不填,企业代码不填,批准日期不填,注册资本不填
地区不填,企业名称填写,企业代码不填,批准日期填写,注册资本不填
地区不填,企业名称填写,企业代码不填,批准日期不填,注册资本填写
地区不填,企业名称不填,企业代码填写,批准日期填写,注册资本不填
地区不填,企业名称不填,企业代码填写,批准日期不填,注册资本填写
增补测试用例:
地区不填,企业名称填写,企业代码不填,批准日期不填,注册资本不填
地区不填,企业名称不填,企业代码填写,批准日期不填,注册资本不填
地区不填,企业名称不填,企业代码不填,批准日期填写,注册资本不填
地区不填,企业名称不填,企业代码不填,批准日期不填,注册资本填写
地区不填,企业名称不填,企业代码不填,批准日期不填,注册资本填写
测试用例减少数:32->13

水平数不相同

因素(变量)的水平数(变量的取值)不相同

假设有一个系统有5个独立的变量(A,B,C,D,E)。变量A和B都有两个取值( A1、 A2和 B1、 B2)。变量C和D有三个可能的取值(C1 、C2、 C3和 D1、 D2、 D3)。变量E有六个可能的取值(E1、E2、E3、E4、E5、E6)

确定因素数和水平数:
有五个因素数:
A,B,C,D,E
两个因素有两个水平(变量的取值)、两个因素有三个水平、一个因素有六个水平:
A:A1、A2
B:B1、B2
C:C1、C2、C3
D:D1、D2、D3
E:E1、E2、E3、E4、E5、E6

选择正交表:
表中的因素数>=5
表中至少有二个因素的水平数>=2
至少有另外二个因素的水平数>=3
还至少有另外一个因素的水平数>=6
行数取最少的一个(L49(78)、L18(3661))
结果:L18(3661

变量映射:
A:0(A1)、1(A2)
B:0(B1)、1(B2)
C:0(C1)、1(C2)、2(C3)
D:0(D1)、1(D2)、2(D3)
E:0(E1)、1(E2)、3(E3)、4(E4)、5(E5)、6(E6)


用正交表设计测试用例:
测试用例如下:这里我就不列出来了。
测试用例减少数:216->18
加上一些可疑的情况(设为n个)为18+n它比原来也少多了

看到这里,应该对怎样使用正交试验法设计测试用例,有了一个了解了。在实际工作中,不断的运用,将会更熟练的掌握这个技术