PICT(Pairwise Independent Combinatorial Testing,成对独立组合测试)是微软开发的一款测试用例生成工具(生成配对测试用例的工具很多,感兴趣的可以参考http://www.pairwise.org/tools.asp的介绍),它可以生成测试用例和测试配置,其理论基础是成对测试技术(Pairwise Testing,之前有文章单独介绍过,在此不多介绍)。
一、PICT安装
通过官网链接?http://download.microsoft.com/download/f/5/5/f55484df-8494-48fa-8dbd-8c6f76cc014b/pict33.msi下载安装包,然后一路点击next安装即可。
安装成功后验证:打开cmd命令终端,输入pict显示如下即证明安装成功。
图1 pict安装成功验证
二、PICT使用
1.建模
PICT是一个命令行工具。在使用PICT生成用例前,需要准备好一个模型文件,PICT将会根据模型文件自动生成组合列表。根据配对测试基于的假设:模型文件中,每个测试点/维度都是正交的,且每个测试点/维度具有有限的影响因子。假如针对邮箱注册功能使用PICT生成用例,注册功能包含:用户名、密码、手机号、是否同意服务协议4个测试维度,每个测试维度所包含的有限影响因子如下表所示。
表1 测试分析建模
2.编辑模型文件
根据建模结果,编辑模型文件,如下图所示:
图2 模型文件
3.运行模型文件
打开cmd命令终端,运行pict test.txt>test.xls,将测试点组合结果输出到test.xls文件。结果如下图所示,共生成157个测试点,在原本13*12*5*2=1560个用例基础上,用例精减率达到90%:
图3 pict执行结果
4.约束条件
在2、3中的例子,使用的是无约束条件pict模型。而在现实中,对于已经经历多个迭代的版本,可能有些组合条件已经测试,因此,可以在pict的模型文件中使用约束条件将之排除。如2、3例中,添加约束条件:“if [用户名] = "为空" or [密码] = "为空" then [手机号] <> "为空";“,表示如果“用户名”或“密码”为空时,“手机号”不为空。
图4 添加约束条件的模型文件
执行上述添加约束条件后的模型文件,生成test1.xls结果如下图所示,与无约束条件的图3想比,测试点数仍为157个,但测试点中不包括:“用户名”=“为空”,“手机号”=“为空”和“密码”=“为空”,“手机号”=“为空”这两例。
图5 添加约束条件后pict执行结果
三、效益
PICT是使用较广的一种配对测试用例生成工具。对于多维度多因子的组合测试,使用PICT可以快速、有效地筛选出经过配对测试筛选后的组合,有助于测试人员节省测试要点整理时间和测试执行时间。
四、FAQ
1.pict执行模型文件报错,错误提示为乱码?
答:pict仅仅支持ANSI和UTF8 ,此处保存为UTF8仍然乱码,则另存为ANSI就可以了。
2.执行模型文件错误,提示没有定义参数值?
答:模型文件中的冒号:和逗号,需要为英文字符。
3.加入约束条件后执行文件,提示输入错误?
答:约束条件字符串值用双引号而不是单引号。
作者:刘晓佳Rachel
来源:51Testing软件测试网原创