组合覆盖与PICT的使用
组合覆盖法是一种有效减少测试用例个数的测试用例设计方法。根据覆盖程度的不同,可以分为单因素覆盖、成对组合覆盖、三三组合覆盖等。其中又以成对组合覆盖最常用。
关于组合覆盖的更多内容,参考:http://www.pairwise.org/
成对组合覆盖要求任意两个因素(输入条件)的所有水平组合至少要被覆盖1次。组合覆盖的算法已经被很多工具实现,测试人员可以直接利用这些工具,例如,TConfig、微软的PICT等。下面简单介绍一下使用PICT(Pairwise Independent Combinatorial Testing tool)设计测试用例的过程。
下载:http://www.pairwise.org/tools.asp (除了PICT,还有很多类似的小工具,均可以从此处找到)
下载后双击安装。
PICT接收一个纯文本的Model文件作为输入,然后输出测试用例集合。Model文件的格式如下:
<ParamName> : <Value1>, <Value2>, <Value3>, ...
Type: Primary, Logical, Single, Span, Stripe, Mirror, RAID-
Size: , , , , , ,
Format method: quick, slow
File system: FAT, FAT32, NTFS
Cluster size: , , , , , , ,
Compression: on, off
把上面的内容存为Model.txt文件。存储在某个目录,例如D盘根目录。然后在命令行中输入以下命令:
C:\Users\Administrator>PICT "D:\Model.txt"
则可产生下面的测试用例:
Type Size Format Method File system Cluster size Compression
Mirror quick FAT off
RAID- slow FAT32 on
Stripe quick NTFS off
Span slow NTFS on
Primary quick FAT32 off
Single slow FAT off
Primary slow FAT on
RAID- quick NTFS on
Logical slow NTFS on
Span quick FAT off
Mirror slow FAT32 on
Logical quick FAT32 off
Logical slow FAT off
Single quick NTFS on
Stripe slow FAT32 on
Mirror quick NTFS off
Span slow FAT32 off
Single quick FAT32 off
RAID- quick FAT off
Stripe slow FAT32 on
Primary quick NTFS off
Span slow FAT on
Primary slow FAT32 on
Single quick FAT32 off
RAID- slow FAT on
Single slow NTFS off
Mirror quick FAT on
Stripe quick FAT on
Primary quick FAT32 off
Single quick NTFS on
Logical slow NTFS off
Stripe slow FAT off
Primary slow NTFS off
Mirror quick FAT on
Stripe quick FAT off
Mirror slow FAT32 on
Span quick NTFS off
Logical slow NTFS off
Span quick FAT on
Logical slow FAT32 on
RAID- quick NTFS on
Stripe slow NTFS off
Mirror slow NTFS off
Span quick FAT off
Span slow NTFS on
Stripe quick FAT32 off
Primary quick FAT off
RAID- slow NTFS on
Primary quick NTFS on
RAID- quick FAT32 on
Primary quick FAT off
Mirror slow FAT32 on
Single slow NTFS off
Logical quick FAT32 off
Single slow NTFS on
Mirror quick FAT32 off
Span slow FAT on
RAID- slow FAT off
Logical quick FAT off
Single slow FAT32 on
如果想把产生的测试用例存储到某个文件,则可输入以下命令:
C:\Users\Administrator>PICT "D:\Model.txt" > "D:\OutPut.txt" #生成文本文档
C:\Users\Administrator>PICT "D:\Model.txt" > "D:\OutPut.xls" #生成表格
上面产生的测试用例一共有60条,而如果完全覆盖,则需要执行7*7*2*3*8*2=4704项测试,这说明成对组合覆盖法可以有效减少测试次数。实验证明,成对组合覆盖法的测试覆盖率高达90%以上。
当然,仔细检查产生的测试用例之后,我们可能会发现,有些组合是不合理的,需要我们自己修改一下,而且有些常用的组合可能没出现在这个表里,还需要我们自己添加。总的来说,任何工具都有一定的局限性,结果可以为作为参考,实际还是离不开人力。
更多关于PICT的使用方法请参考PICT的帮助文档。
PS:实际上,我没弄清楚成对组合覆盖和正交表具体有什么样的区别,总感觉差不多,如果有小伙伴清楚的话,欢迎留言解惑,不胜感激!
组合覆盖与PICT的使用的更多相关文章
- 用例设计工具PICT — 输入组合覆盖
1 成对测试简介 成对测试(Pairwise Testing)又称结对测试.两两测试,是一种正交分析的测试技术.成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的.是当不可能遍 ...
- 两两组合覆盖测试用例设计工具:PICT
两两组合覆盖测试用例设计工具:PICT 2016-08-31 目录 1 成对测试简介2 PICT使用 2.1 安装 PICT 2.2 使用PICT3 PICT算法 3.1 准备阶段 3.2 产 ...
- 正交表生成工具 PICT 成对组合覆盖 收藏
收藏:https://www.cnblogs.com/wmjperson/p/4557246.html
- PICT实现组合测试用例(二)
上次简单总结了PICT命令的一些用法,这次重新把<软件测试实战>里面有关这一章的内容再总结一次,以巩固理解. 组合测试的概念 组合测试(combinatorial testing)是一种测 ...
- PICT实现组合测试用例
成功安装后,在命令行中输入命令pict: 可以看到pict命令的一些选项: /o:N 组合数,默认值为2,即pict生成的测试用例集中每条测试数据会有两个值与其他测试集是不同的: /d:C 值 ...
- PICT测试工具的安装及使用
PICT工具就是在微软公司出品一款成对组合的命令行生成工具,现在已经对外提供,可以在互联网上下载到 .PICT 可以有效地按照两两测试的原理,进行测试用例设计.在使用PICT时,需要输入与测试用例相关 ...
- 【测试设计】基于正交法的测试用例设计工具--PICT
前言 我们都知道成对组合覆盖是一种非常有效的测试用例设计方法,但是实际工作过程中当成对组合量太大,我们往往很难做到有效的用例覆盖. PICT是微软公司出品的一款成对组合命令行生成工具,它很好的解决了上 ...
- 组合测试(Combinatorial Test)/配对测试 (pairwise)
组合测试方法:配对测试实践 实施组合测试 常用的Pairwise工具集:http://www.pairwise.org/tools.asp 成对测试(Pairwise Testing)又称结对测试.两 ...
- PICT:基于正交法的软件测试用例生成工具
成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的.Cohen等人应用成对组合覆盖测试技术对Unix中的“Sort”命令进行了测试.测试结果表明覆盖率高达90%以上.可见成对组 ...
随机推荐
- System.getProperty()获取系统的配置信息
原文地址:http://www.jsjtt.com/java/Javajichu/105.html 此处记录备用. 1. 通过System.getProperty()可以获取系统的配置信息,Syste ...
- IOS-一步一步教你自定义评分星级条RatingBar
本文转载至 http://blog.csdn.net/hanhailong726188/article/details/42344131 由于项目的需要,需要设计能评分.能显示评分数据的星级评分条,但 ...
- Go语言学习笔记1
1.Go语言环境搭建及基础知识 Go语言官方网站(http://golang.org) 代码包文档网站(http://godoc.org) Go语言中文网(http://studygolang.com ...
- Linux环境部署
1,开机初始化的配置 iptables -F # 清空防火墙 /etc/init.d/iptables stop # 关闭iptables setenforce # 暂停selinux 2,编译安装p ...
- A - 取(m堆)石子游戏
m堆石子,两人轮流取.只能在1堆中取.取完者胜.先取者负输出No.先取者胜输出Yes,然后输出怎样取子.例如5堆 5,7,8,9,10先取者胜,先取者第1次取时可以从有8个的那一堆取走7个剩下1个,也 ...
- vue 实现聊天框滚动到底
在需要出现滚动条的 DOM上添加 v-scroll 属性: <div class="chat-box" v-scroll="{auto: true}"&g ...
- 写写我的硕士三年【zz】
昨天我们组的10bit-40M ADC测出来了,自己终于能松口气,可以无牵无挂的毕业了.晚上老板bg全组毕业生,喝了很多,我对老板说:"这3年在组里,我是把它当作事业来做的!"是的 ...
- python使用selenium安装chromedriver的问题
环境 win64位,python3.6, 问题与解决 说来也巧,今天无意中解决了两个多月前的问题,即用selenium调用chrome浏览器报错的问题:起因是在知乎中看到了一篇12306抢票的文章,用 ...
- 看看大神们是怎么解决一些【bng】的哪!!!!
作者:姚冬 遇到bng的分享 我曾经做了两年大型软件的维护工作,那个项目有10多年了,大约3000万行以上的代码,参与过开发的有数千人,代码checkout出来有大约5个GB,而且bug特别多,op ...
- p740+5802+外置磁带机连线
扩展柜型号5802 主柜型号p740 下图是连接线说明 需要连12X 和 SPCN 单个磁带机SAS线两根连接单个PCI否则,磁带无法提供多个分区使用 通过HMC或者查看资源情况 HMC配置Lpar分 ...