PICT实现组合测试用例(二)
上次简单总结了PICT命令的一些用法,这次重新把《软件测试实战》里面有关这一章的内容再总结一次,以巩固理解。
- 组合测试的概念
组合测试(combinatorial testing)是一种测试用例生成方法。传统的测试用例生成方法中没有这一方法,但是组合测试确实对传统测试方法的综合,如果能熟练自如的运用组合测试,那么我想大部分测试方法也就都能融会贯通了。
运用组合测试,测试人员需要将被测试对象抽象为一个受到多个变量影响的系统,其中每个变量的取值是离散且有限的。然后使用组合测试工具生成满足特定组合覆盖标准的组合测试用例集。
1、两因素组合测试(也称配对测试、全对偶测试)生成的测试集可以覆盖任意两个变量的所有取值组合。在理论上,该用例集可以暴露所有由两个变量共同作用而引发的缺陷。
2、多因素组合测试生成的测试集可以覆盖任意n和变量的所有取值组合。在理论上,该测试用例集可以发现所有n个因素共同作用引发的缺陷。
- 怎样进行组合测试建模
组合测试面临的一个最大问题是:没有足够的测试资源来运行所有的测试用例(全组合测试)。因此提出了基于一个数学模型和一个假设的解决方法。
一个数学模型:产品的功能被抽象为函数f,产品的输入被抽象为函数的变量x1,x2,…,xm,且xi(1≤i≤m)的可能取值是有限的,产品的输出被抽象为函数的返回值y1,y2,…,yn。
一个假设:如果测试覆盖了任意t个(2≤t≤m)输入变量的取值组合,那么该测试可以发现函数f的大部分错误。
组合测试建模的步骤
1)确定变量xi;
2)确定每个变量xi的取值集合;
3)为了更充分的发现缺陷,每个变量的取值要进行充分的设计,尤其是“典型取值”,可以通过等价划分、边界值等方法进行取值。测试集中没有包含可以暴漏错误的特定取值是缺陷遗漏的主要原因;
4)确定检查方法,以判断y1,y2,…,yn是否正确。错误的或不严谨的检查都有可能遗漏暴漏的缺陷。
组合测试模型的问题
1)组合测试可能会错过最重要的取值组合;由于是工具生成测试用例集,而且不是全覆盖测试,所以很可能遗漏的测试集就是最重要而且能发现问题的测试用例(例如默认测试集);
2)组合测试的数学模型没有描述变量之间的约束关系;此时需要加入约束条件(PICT即可实现此功能)
3)组合测试用例可能被卫哨语句过滤;此时需要用到PICT中的~在无效数据前进行标记;
PICT实现组合测试用例(二)的更多相关文章
- PICT实现组合测试用例(一)
最近阅读了史亮老师的<软件测试实战:微软技术专家经验总结>一书,其中“测试建模”一章让我受益匪浅.想想以前的测试有多久没有花过心思放在测试用例的设计上了,一直强调“测试思想”的培养也都只是 ...
- PICT实现组合测试用例
成功安装后,在命令行中输入命令pict: 可以看到pict命令的一些选项: /o:N 组合数,默认值为2,即pict生成的测试用例集中每条测试数据会有两个值与其他测试集是不同的: /d:C 值 ...
- 安装并使用PICT,生成测试用例
一.PICT简介 PICT工具是在微软公司内部使用的一款承兑组合的命令行生成工具,现在已经对外提供,可以在 http://download.microsoft.com/download/f/5/5/f ...
- 理解函数式编程中的函数组合--Monoids(二)
使用函数式语言来建立领域模型--类型组合 理解函数式编程语言中的组合--前言(一) 理解函数式编程中的函数组合--Monoids(二) 继上篇文章引出<范畴论>之后,我准备通过几篇文章,来 ...
- 用例设计工具PICT — 输入组合覆盖
1 成对测试简介 成对测试(Pairwise Testing)又称结对测试.两两测试,是一种正交分析的测试技术.成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的.是当不可能遍 ...
- javaweb各种框架组合案例(二):maven+spring+springMVC+mybatis
1.mybatis是比较新的半自动orm框架,效率也比较高,优点是sql语句的定制,管理与维护,包括优化,缺点是对开发人员的sql功底要求较高,如果比较复杂的查询,表与表之间的关系映射到对象与对象之间 ...
- 转载:PICT使用教程(设计测试用例工具)
原文:https://blog.csdn.net/quiet_girl/article/details/50699543 之前一篇写了正交设计助手的使用教程,与正交设计助手相比,个人觉得PICT的使用 ...
- 【框架】用excel管理测试用例需要的参数数据(二)
一.总体思路 以类为excel名,测试方法名为sheet名,建立excel文件.用jxl包里的方法去读取excel文件里的内容,然后用testng里的dataprovider,将数据传递给测试用例 二 ...
- PICT工具安装使用
前言:PICT工具在微软公司出品一款成对组合的命令行生成工具.PICT 可有效地按照两两测试Pairwise的原理,进行测试用例设计.在使用PICT时,需要输入与测试用例相关的所有参数,以达到全面覆盖 ...
随机推荐
- [SQL SERVER系列]之嵌套子查询和相关子查询
子查询有两种类型,一种是只返回一个单值的子查询,这时它可以用在一个单值可以使用的地方,这时子查询可以看作是一个拥有返回值的函数:另外一种是返回一列值的子查询,这时子查询可以看作是一个在内存中临时存在的 ...
- iOS百度地图路径规划和POI检索详细总结-b
路径规划.png 百度地图的使用 百度地图API的导入网上说了许多坑,不过我遇到的比较少,这里就放两个比较常见的吧.坑一: 奥联WIFI_xcodeproj.png 如上图所示,在infoplist里 ...
- jQuery树结构插件推荐zTree
JQuery zTree 下载地址http://plugins.jquery.com/zTree.v3/
- 图片流滚动效果html代码(复制)
<!doctype html> <html> <head> <meta charset="utf-8" /> < ...
- linux网络环境配置
第一种方法: (red hat) (1)用root身份登录,运行setup命令进入到text mode setup utility 对网络进行配置,这里可以进行ip,子网掩码,默认网关,dns的设置. ...
- Jquery-DataTable 使用介绍
http://dt.thxopen.com/example/server_side/simple.html
- Agri Net POJ1258 && Constructing Roads POJ2421
题意,在给出的图中,使用最小花费的边,使这个图仍然连通. #include <cstdio> #include <algorithm> #include <cstring ...
- Python之异常篇 [待更新]
简介 当你的程序中出现某些 异常的 状况的时候,异常就发生了.例如,当你想要读某个文件的时候,而那个文件不存在.或者在程序运行的时候,你不小心把它删除了.上述这些情况可以使用异常来处理. 假如你的程序 ...
- foreman1.3安装
一.环境: centos 6.3 64bit 二.安装yum源: rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release ...
- ubuntu 解决依赖问题
安装aptitude包管理器 然后用aptitude安装 sudo aptitude install ***