博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
两两组合覆盖测试用例设计工具:PICT
阅读量:5878 次
发布时间:2019-06-19

本文共 1447 字,大约阅读时间需要 4 分钟。

两两组合覆盖测试用例设计工具:PICT

2016-08-31

目录

1

2
  2.1
  2.2
3
  3.1
  3.2

1 成对测试简介


 

成对测试(Pairwise Testing),是一种正交分析的测试技术。成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的。Cohen等人应用成对组合覆盖测试技术对Unix中的“Sort”命令进行了测试。测试结果表明覆盖率高达90%以上。通过对缺陷的统计分析发现,相对于多个因子的组合,大部分的问题能够通过因子的两两组合来发现,多个因子的组合仅会发现少量的问题,但是测试的投入却是巨大的,因此,相对来说两两组合可以更有效地发现缺陷。可见成对组合覆盖是一种非常有效的测试用例设计方法。

成对组合覆盖要求任意两个因素(输入条件)的所有水平组合至少要被覆盖1次。实现成对组合覆盖的算法工具有很多,其中微软的PICT就是其中一个。

使用范围

  • 对于每个程序输入来说,均能构建有意义的等价类
  • 程序的输入是彼此独立的
  • 程序的输入是没有顺序的
  • 故障仅取决于一对程序输入的交互

2 PICT使用


 

PICT全称Pairwise Independent Combinatorial Testing tool,是微软的一款成对组合的命令行生成工具,生成pairwise testing所需的测试用例。

2.1 安装 PICT

常用的Pairwise工具集: 处下载PICT工具。下载后默认安装,也可安装在: D:\Program Files (x86)\PICT,可以目录下看到有两个文件‘pict.exe’、‘PICTHelp.htm’。

2.2 使用PICT

在PICT的目录下,新建一个test.txt文件,输入与测试用例相关的所有参数,如下图1所示:

图1 test.txt参数内容

test.txt参数内容,如下代码:

Factor A:I,YouFactor B:see,catchFactor C:bird,dog,chicken

CMD进入命令提示符。输入命令:

cd "D:\Program Files (x86)\PICT"pict test.txt

图2 输出结果

也可以通过命令pict test.txt >test.xls命令,将结果输出到test.xls的excel表格当中

3 PICT算法


 

pict产生测试用例有两个阶段

  1. 准备阶段
  2. 产生阶段

3.1 准备阶段

就是为产生阶段做准备,在这个阶段,PICT计算出用例产生阶段所需要的所有信息。主要是元素的成对组合要覆盖所有。

列入上面给的参数:有(Fact A Fact B),(Fact A Fact C),(Fact B Fact C),每种各有4,6,6的组合

3.2 产生阶段

每种情况叫一个slot,例如(Fact B Fact C)组合有4个slot,(Fact A Fact C),(Fact B Fact C)组合都是有6个slots.

每个slot能够被标识为uncovered,covered,exclued,分别表示该slot还没覆盖,已经覆盖,或者排除在外(用在有前提条件下),所有uncovered组织成链表,当产生阶段产生的测试用例如果满足某个slot的组合,那么该slot就被标识为covered,当所有的slot被标识为covered,那么算法结束。

 

转载于:https://www.cnblogs.com/Ming8006/p/5827294.html

你可能感兴趣的文章
C/C++ 多线程机制
查看>>
js - object.assign 以及浅、深拷贝
查看>>
python mysql Connect Pool mysql连接池 (201
查看>>
Boost在vs2010下的配置
查看>>
一起谈.NET技术,ASP.NET伪静态的实现及伪静态的意义
查看>>
20款绝佳的HTML5应用程序示例
查看>>
string::c_str()、string::c_data()及string与char *的正确转换
查看>>
11G数据的hive初测试
查看>>
如何使用Core Text计算一段文本绘制在屏幕上之后的高度
查看>>
==和equals区别
查看>>
2010技术应用计划
查看>>
XML 节点类型
查看>>
驯服 Tiger: 并发集合 超越 Map、Collection、List 和 Set
查看>>
Winform开发框架之权限管理系统改进的经验总结(3)-系统登录黑白名单的实现...
查看>>
Template Method Design Pattern in Java
查看>>
MVC输出字符串常用四个方式
查看>>
LeetCode – LRU Cache (Java)
查看>>
JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)...
查看>>
【转】 学习ios(必看经典)牛人40天精通iOS开发的学习方法【2015.12.2
查看>>
在 ASP.NET MVC 中使用异步控制器
查看>>