来自官网:
PICT generates test cases and test configurations. With PICT, you can generate tests that are more effective than manually generated tests and in a fraction of the time required by hands-on test case design.
PICT 是一个帮你自动生成测试用例的小工具,只需要你输入规则,它会帮你生成用例。
第一步,准备 model.txt
#
# This is a sample model for testing volume create/delete functions
#
Type: Primary, Logical, Single, Span, Stripe, Mirror, RAID-5
Size: 10, 100, 500, 1000, 5000, 10000, 40000
Format method: quick, slow
File system: FAT, FAT32, NTFS
Cluster size: 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536
Compression: on, off
第二步,在命令行上运行 “pict.exe model.txt > test_cases.txt”。 所生成的文件 test_cases.txt 是两因素组合测试用例集,其内容如下。
PLATFORM CPUS RAM HDD OS IE
amd64 Single 4GB SCSI Win2K 4.0
amd64 Dual 128MB IDE Win2K3 6.0
x86 Quad 64GB SCSI Win2K3 5.0
...
在 model.txt 文件底部加入以下脚本:
IF [PLATFORM] = "x86" THEN [RAM] <> "64GB";
IF [OS] = "Win2K3" THEN [IE] >= 6.0;
第一条约束是,当CPU是x86时,内存不能是64GB。第二条约束是,当操作系统是Windows 2003时,IE的版本号要大于6.0。当PICT读取模型文件时,它会解析约束规则,并将其应用于测试用例生成过程。生成的测试用例集既满足对有效取值组合的覆盖,又不包含无效取值组合。
「微软的软件测试之道」建议从两因素组合测试开始,逐渐提高组合维度,直至6因素组合测试,因为有研究表明6因素组合测试可以发现绝大多数的程序缺陷。 在测试实践中,3因素组合测试可能是比较实际的选择。
PLATFORM: x86, ia64, amd64
CPUS: Single, Dual, Quad
RAM: 128MB, 1GB, 4GB, 64GB
HDD: SCSI, IDE
OS: NT4, Win2K, WinXP, Win2K3
IE: 4.0, 5.0, 5.5, 6.0
APP: SQLServer, Exchange, Office
{ PLATFORM, CPUS, RAM, HDD } @ 3
{ OS, IE } @ 2
根据该模型文件,PICT将对PLATFORM, CPUS, RAM, HDD实施3因素组合覆盖,具体的生成策略可参加下图。PICT在两因素组合覆盖的基础上,对某些因素实施多因素组合覆盖,这有助于实现更灵活的测试策略。
【选项】
/o:N 组合数,默认值为2
默认生成二元组的测试用例,即pict生成的测试用例集中最多有两个值与其他测试集是相同的;改为3,则覆盖率会增大,但同时也会生成更多的测试用例;但缺陷大部分发生在参数两两组合的情况下,三个参数组合导致的缺陷并不多见。
/d:C 值与值之间的分隔符,默认为逗号(,)
例如一个参数操作系统 winxp,win7,win8 之间会用逗号隔开;
/a:C 别名间的分隔符,默认是管道符(|)
例如一个参数(用户名不区分大小写,但为了保证测试的可信度,可以用大小写轮换的方式进行测试)用户名 admin|ADMIN;
/n:C 无效数值或者是非法数值的前缀,默认值为(~)
例如一个参数(只能取1、2,为了测试非法值的输入,取0,但又不希望0和其他参数的每隔值都配一次对,为了减少测试集的数量,在0前面加一个~)即参数 ~0,1,2;
/e:file 定义种子文件,作用是可以指定组合方式
例如在种子文件seed.txt中指定一个组合方式,在执行1.txt时,命令:pict 1.txt /e:seed.txt 生成的测试集中会包含seed中指定的组合集(当然指定的组合集有一定条件)。(此参数目前的理解可能会有误区);
/r[:N] 随机生成,N -种子
通过/r参数,可以使每次生成的测试集不同;
/c 参数的值完全区分大小写
/s 显示模型统计数据
Written on August 8th, 2017 by YangQinYuan