正交实验法的介绍
正交实验法的介绍
正交试验法是分析多因素、多水准的一种实验法,它是借助正交表来对实验进行设计,依据少数的实验取代全面实验
在一项实验中,把影响实验结果的量称之为实验因素(因子),简称因素。因素可以理解为实验过程中的自变量,实验结果可以看成因素的函数。在实验过程中,每一个因素可以处于不同的状态或状况,把因素所处的状态或状况,称之为因素的水准,简称水准。
举个例子
某所大学通信系共2个班级,刚考完某一门课程,想依据“性别”、“班级”和“成绩”这三个查询条件对通信系这门课程的成绩分布,男女比例或班级比例进行人员查询:
- 依据“性别”=“男,女”进行查询
- 依据“班级”=“1班,2班”查询
- 依据“成绩”=“及格,不及格”查询
按照传统设计——全部检测
分析上述检测需求,有3个被测元素,被测元素我们称之为因素,每个因素有两个取值,我们称之为水准值(也就是2)。
如果是普通的全面检测,则如下(2^3=8次)
若采用正交检测
借助正交表设计功能测试,我们得到的功能测试个数是n=3 * (2 - 1) + 1 = 4(这个公式就是(因素数 *(较大水准数 - 1)+1)),对于三因素两水准的刚好有L4(2^3)的正交表可以套用
于是用正交表实验法得出4个功能测试如下(正交检测表的类型一般都会给出来)
正交试验设计方法
- 与一般的试验设计类似,用正交试验设计方法设计功能测试时主要包括以下步骤
确定因素
- 这里的因素是指对软件运行结果有影响的软件
确定因素的取值范围或集合(该步是为步骤3做准备的)
- 因素的取值范围是指软件输入的取值范围或集合以及可用的硬件资源。
确定每个因素的水准
- 依据因素的取值范围或集合,采用等价类划分、边界值分析以及其他软件测试技术,在每个因素的取值范围或集合内挑选出有效等价类、无效等价类、恰好等于、刚刚大于或刚刚小于边界值等有代表性的检测值。
选择正交表
依据确定的因素和水准,选择适合的正交表。
要是没有合适的正交表可用或需要的功能测试个数太多,要对因素和水准进行调整。
正交表的构成
l行数(Rs):正交表中的行的个数,即实验的次数,也是依据正交实验法设计的功能测试的个数
l因素数(Factors):正交表中列的个数,即要检测的功能点。
l水准数(Levels):任何单独因素能够取得的值的较大个数,即要检测功能点的输入值
正交工具allpairs
- 下载:https://www.satisfice.com/download/allpairs#
allpairs使用
解压 allpairs
首先先找个组合测试用例。
制作取值表(只列出数据即可,不用编号)。
体型 年龄段 性别 胖 老年 男 适中 青年 女 瘦 少年
复制取值表的数据,保存到普通的(txt)文档中,比如t1.txt。注意,不要改格式。
- 将文本文件放在allpairs目录中。然后在该目录
Shift + 鼠标右键
打开命令行,在命令行中执行
# allpairs.exe input.txt > output.txt
allpairs.exe t1.txt > output.xls
- 可以生成 txt 和 Excel 文件(在allpairs目录下),生成的文件就是想要的测试组合用例了
- 来看效果
- 稍加整理
用例 | 体型 | 年龄段 | 性别 |
---|---|---|---|
1 | 胖 | 老年 | 男 |
2 | 胖 | 青年 | 女 |
3 | 适中 | 老年 | 女 |
4 | 适中 | 青年 | 男 |
5 | 瘦 | 少年 | 男 |
6 | 瘦 | 老年 | 女 |
7 | 胖 | 少年 | 女 |
8 | 适中 | 少年 | ~男 |
9 | 瘦 | 青年 | ~男 |
~男
表示该值是男是女都不影响实例测试结果