黑盒测试方法(五)正交实验设计方法

来源:互联网 发布:一落叶而天下知秋 编辑:程序博客网 时间:2024/04/28 01:37

一、应用场景

利用因果图来设计测试用例时,作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。因果图而得到的测试用例数目多的惊人,可利用正交实验设计。


 

二、什么是正交实验法

正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例)。类似的方法有:聚类分析方法,因子方法方法等.

节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。


 

三、设计步骤:

1.提取功能说明,构造因子--状态表

     把影响实验指标的条件称为因子.而影响实验因子的条件叫因子的状态.分解说明书中的功能为基本的功能。找出影响其功能实现的操作对象和外部因素,把他们当作因子,而把各个因子的取值当作状态要求.

2.加权筛选,生成因素分析表

     对因子与状态的选择可按其重要程度分别加权.可根据各个因子及状态的作用大小,出现频率的大小以及测试的需要,确定权值的大小。

3.利用正交表构造测试数据集

     正交表的推导依据Galois理论(这里省略,需要时可查数理统计方面的教材)。


 

四、公式

     单一水平正交表Ln(mk)k代表最多可安排影响指标因素的个数或正交表的列数m表示每个因素水平数,且有n=k*(m-1)+1

     对于混合水平正交表Ln(m1k1m2k2..mxkx),用n=k1*(m1-1)+k2*(m2-1)+…kx*(mx-1)+1公式计算

     如果不存在试验次数等于n的正交表,我们就得找出满足试验次数大于n的正交表并且水平数大于等于max(m1,m2,m3,…)、因素数大于等于(k1+k2+k3+…)。比如22

     每列中不同数字出现的次数相等。任意2列其横向组成的数字对中,每种数字对出现的次数相等。


 

五、示例

     根据“性别”=“男,女”进行查询根据“班级”=“1班,2班”查询根据“成绩”=“及格,不及格”查询。

     1.传统设计:共2*2*2=8个用例

     2.用正交:共3*2-1+1=4

    

序号

性别

班级

成绩

1

1

及格

2

2

不及格

3

1

不及格

4

2

及格


 

 

     3. 因素数和水平数越大越能体现用正交表的好处。


 

六、混合水平正交表示例

     1.      确定因素数和水平数

因素数:对比度,色彩效果,感光度,白平衡,照片大小,闪光模式

水平数:

对比度:正常、极低、低、高、极高

色彩效果:无、黑白、棕褐色、负片、水绿色

感光度:自动、100、200、400、800

白平衡:自动、白炽光、日光、荧光、阴光

照片大小:5M、3M、2M、1M、VGA

闪光模式:开、关

      2.  根据因素数和水平数确定n
 

m1=5,k1=5

m2=2,k2=1

                  Ln(5521)

         n=k1*(m1-1)+k2* (m2-1)+1=5*(5-1)+1*(2-1)+1=20+1+1=22

       3. 3.选择合适的正交表

                  不存在n=22的正交表,这个时候我们就得找n大于22并且满足m>=max(m1=5,m2=2),k>=k1+k2=5+1=6的正交表。查到L25(56),L49(78)

        

七、正交试验法的优缺点

     优点:均匀分散,整齐可比”的特点。通过使用正交试验法减少了测试用例,工时与费用,提高测试用例的有效性。是一种高效率、快速、经济的实验设计方法。

     缺点:对每个状态点同等对待,重点不突出,容易造成在用户不常用的功能或场景中,花费不少时间进行测试设计与执行,而在重要路径的使用上反而没有重点测试。

原创粉丝点击