测试用例之正交排列法

正交排列法

说明:

正交表:数学---统计学的研究成果

使用最少的抽样数据达到最广的,覆盖率最高的统计结果

测试人员:需要选择合适的正交表,并且能将正交表应用到测试中即可

提示:正交表对于测试人员只是工具,不需要深入研究原理,也无需背诵。

一、 正交排列法的使用场合

在一个界面中有多个控件,每个控件有多个取值,测试要考虑不同控件不同取值之间的组合 ,但是组合数量较大(>20种,20种以下一般用因果图/判定表),没有必要全部测试,如何从所有组合中挑选最少的组合测试,并能得到最优的测试效果—使用正交排列法。

二.正交排列法和判定表法的主要异同:

1、都是用来测控件的组合问题

2、判定表法适合测组合数量较少的情况

3、正交排列法适合测组合数量较多的情况

4、判定表(因果图)会反映控件之间的限制和组合关系

5、正交排列表只需反映控件之间的组合关系。

三、解析正交表公式

 

L:line  行

n:表示正交表有几行,需要测试的组合的个数

n值是固定的,一旦正交表确定n值就是固定的,不需要测试人员自己计算。

m:表示正交表中允许出现的最大值

根据每个控件的取值个数来确定m值

k:表示正交表有几列

根据组合的控件个数进行确定

四、使用正交表测试的步骤:

步骤1:分析需求--- 列出需要组合的控件以及每个控件的取值(excel)

步骤2:选择一个合适的正交表  

选择正交表,其实就是确定正交表的m值和k值的过程

M(控件的取值个数):3

K(控件个数):4

正交表:3的4次幂

步骤3:应用正交表

 

1、 把控件替换了正交表的列标题(因子)

2、 将每个控件的取值分别替换掉了对应正交表列的值(状态)

3、 应用正交表

 

步骤4:根据正交排列表填写测试用例

把正交表中的1行编写1条测试用例,测试一种组合

说明:实际工作中有时会直接使用正交排列表测试,不写测试用例

五、关于正交排列法的总结

1、正交表是采用最少的测试数据,达到最优的测试效果,但是遗漏的组合较多。有遗漏缺陷的风险,如果时间允许,可以适当的补充测试

2、正交表法的局限:

1)正交表的个数有限(9个)

2)要求每个控件中的取值个数要相等,这在实际应用中很少遇到

3、正交表的特性:

1)每列中不同数值出现的次数均等

2)在任意两列中,同一行的两个数值组成有序数对,则有序数对出现的次数是均等的

六、正交表的强化操作—没有合适的正交表

1、控件的个数(k值)不符合

方案:选择最接近的但是稍微大一点的k值,用不到的列可以删掉

练习2:理论上:3的3次幂,但是没有正合适的正交表

最终选择:3的4次幂

2、没有合适的m值,怎么解决(powerpoint 软件的打印功能)

方法1:少数服从多数原则

M值相同的控件个数最多的那个m值

案例:分析结果,3的4次幂

方法2:最大值原则—选择控件取值个数最多的值当m值

案例分析:m=4(取值最大),k=4

理论上:4的4次幂,但是没有

最终选择:4的5次幂,多余1列可以删掉

方法总结:

1、 如果有多余的列,可以删除掉

2、 能映射的值先映射好(替换)

3、 把每一列多出的机会,尽量均匀分配给该列的各个取值

4、 要检查是否有完全一样的组合,如果有要适当处理(建议修改,也可以删除)

5、 选择正交表时正好能应用正交表示首选,如果不合适呢么选择最接近的。

实际工作中,属性设置测试,兼容性测试常用正交排列法,而且兼容性测试可以不编写测试用例,直接用正交排列表测试各种兼容组合。

可以看看这个的案例哦:https://www.cnblogs.com/fuxinxin/p/8991703.html

原文地址:https://www.cnblogs.com/LWK5100/p/14234746.html