一、正交实验法概述
正交实验法是研究多因素多水平的一种方法,它是通过正交表挑选部分有代表性的水平组合试验替代全面试验。这些有代表性的组合试验具备了“均匀分散,整齐可比”的特点。正交表一般用Ln(mk)表示,L 代表是正交表,n 代表试验次数或正交表的行数,k 代表最多可安排影响指标因素的个数或正交表的列数,m 表示每个因素水平数,且有 n=k*(m-1)+1。
二、正交实验法应用
例如三因素二水平的实验:某公司想通过“性别”、“单身”和“年龄”这三个查询条件对公司男女比例情况进行查询:
根据“性别”=“男,女”查询
根据“单身”=“是,否”查询
根据“年龄”=“30 岁以下、30 岁以上”查询
按全面实验要求,须进行23=8种组合的实验。每一行为一条测试用例。
若按L4(23)正交表实验,正交表获取路径:
https://www.york.ac.uk/depts/maths/tables/orthogonal.htm
把每一行转成测试用例,只需测试 4 次,极大地减少了工作量。
但对于缺少设计经验且被测功能的因素、水平多的情况下,手动去设计正交表是有一定困难的。基于此,给大家推荐一款 Allpairs 工具,自动生成组合测试用例。
三、Allpairs 下载安装
- 可直接百度 Allpairs 或者通过以下链接 https://www.softpedia.com/get/Programming/Other-Programming-Files/Allpairs.shtml 完成下载。
2.下载完成后将下载压缩包解压到对应文件夹。
四、Allpairs 正交实验法使用
举例:商品筛选(手机)页面
- 分析所有条件及取值,整理到一个 Excel 文档中
- 在 allpairs 目中中新建记事本 1.txt(文件名自定义),并复制 Excel 表中的数据,保存到记事本 txt 中。
- 在当前安装目录中打开命令行窗口,并执行 allpairs.exe t1.txt > testdata.xls
- 查看生成的 testdata.xls。TEST CASES 就是我们需要的测试用例,PAIRING DETAILS 配对详情内容可忽略。
五、总结
利用因果图法、判定表法可以帮助我们对于输入数据的组合情况进行用例设计,但当输入数据的组合数量巨大时,由于不太可能覆盖到每个输入组合的测试情况,因果图法或判定表法可能就不太适用了,可以采用正交实验法、来合理地减少测试人力跟时间成本。这种方法比较多地应用在软件产品的搜索、查询等场景中。