对于多因子组合测试工具pairwise testing及PICT的探索总结
对于多因子组合测试工具pairwise testing及PICT的探索
一、简介
对于存在多个输入参数,例如多个条件的筛选,每个条件中又有多个选项让我们选择,如果全部覆盖的话,那数量级必然是相当大的。
而pairwise testing 即配对测试是一种行之有效的简化此类测试用例的思路,它的理论基础是统计分析及正交分析;
它基于以下两个两个原则:
1.每一个维度都是正交的,即每一个维度互相都没有交集。
2.根据数学统计分析,73%的缺陷(单因子是35%,双因子是38%)是由单因子或2个因子相互作用产生的。19%的缺陷是由3个因子相互作用产生的。
二、Pairwise Testing Service
Pairwise Testing Service项目理论主要基于正交表的理论,并集中体现在在AMEngine(Algebra Method Engine) 的设计与实现中。当然Pairwise Testing Service还有其他的Engine可以了解;下图是AMEngine的位置;
Pairwise Testing Service项目的源码和核心包在Google Code中可以拿到,具体地址http://code.google.com/p/pairwisetestingservice/source/browse,我们以其中的demo做简要的使用说明;
其中的Factor定义了我们的各项因子,即简介例子中的题型、难度、年份等,Factor类的addLevel方法可以对各项因子添加相应的水平,即难度的极易、较易、中等···。执行后即可得出相应的配对结果;
对于不同数量的因子,增减相应数量的因子即可。
注意:
源码中使用的是Join类,但是Join类在运行时找不到,且在Google code的项目中只有Joiner类,个人猜测Join类被替换成类Joiner类,所以进行了上述改写,可以解决类找不到的问题;重新打成jar包,引入项目中,可继续执行demo;
参考文章:http://www.doc88.com/p-5817246779157.html
三、PICT
PICT是由微软研发的开源的工具,工具下载地址:https://github.com/Microsoft/pict最新的版本支持多平台(linux、mac、windows),需要自行编译。
1.首先我们需要将各因子和水平写到一个txt文件中,如简介中的筛选 ,txt文件内容参数如下:
难度: 极易,较易,中等,较难,极难
年份: 2020,2019,2018,2017,2016,2015
注意内容空格、冒号、逗号等都是英文字符;
2.执行pict test.txt命令,可得结果;
3.也可执行pict test.txt test.xls命令,将结果输出到相应的表格文件当中;
参考文档:https://www.jianshu.com/p/4afad7bd1be9
https://www.liangzl.com/get-article-detail-139216.html
除了PICT文件外,还有许多其他的工具可以尝试使用
工具列表地址:http://www.pairwise.org/tools.asp
四、个人建议
建议同时使用两个以上的工具,综合参考两个工具的结果来设计测试用例;