在许多应用系统的测试工作中,输入条件的因素很多,而且每个因素也不能简单用“是”和“否”来回答。
例:为提高某化工产品的转化率,选择了三个有关因素进行条件试验:反应温度(A),反应时间(B),用碱量(C),这三个因素的试验范围如下:
A:80-90℃
B:90-150分钟
C:5-7%
对A、B、C三个因素分别取三个水平值,如下: A:A1=80 ℃ ,A2=85 ℃,A3=90 ℃
B:B1=90分钟,B2=120分钟,B3=150分钟
C:C1=5%,C2=6%,C3=7%
对于3个因素、各因素3个水平的测试用例设计,完全组合需要3X3X3=27个测试用例。
依据Galois理论,从大量的(实验)数据(测试用例)中挑选适量的、有代表性的点(条件组合),从而合理地安排实验(测试)的一种科学实验设计方法。
在测试实践中,可以直接使用现成的正交表进行测试用例的设计。正交表用Ln(tc)标识,其中L为正交表的代号,n为试验的次数(行数),t为水平数,c为因子数,常见的正交表有L4(23)、L8(27)、L9(34)、L16(45)等。
序号 | x1 | x2 | x3 | x4 |
1 | 3 | 2 | 3 | 1 |
2 | 3 | 3 | 1 | 2 |
3 | 2 | 1 | 3 | 2 |
4 | 2 | 3 | 2 | 1 |
5 | 2 | 2 | 1 | 3 |
6 | 1 | 3 | 3 | 3 |
7 | 1 | 1 | 1 | 1 |
8 | 3 | 1 | 2 | 3 |
9 | 1 | 2 | 2 | 2 |
实例1
某所大学通信系共有2个班级,这两个班刚考完某一门课程,现在要通过教务系统查询学生成绩。假设有3个独立的查询条件,可以获得特定学生的个人成绩。
性别:{男,女}
班级:{1班,2班}
成绩:{及格,不及格}
正交实验设计步骤:
确定影响功能的因子与状态
选择一个合适的正交表,参考
https://www.york.ac.uk/depts/maths/tables/orthogonal.html
https://wenku.baidu.com/view/66be09781711cc7931b716ac.html
利用正交表构造测试数据集
把变量的值映射到表中,为剩下的水平数选取值
把每一行的各因素水平的组合做成一个测试用例。再增加一些没有生成的但可疑的测试用例。