Pair Testing
All-Pairs Testing is a test design method to deal with the combinatorics problem of defining test cases in a systematic way.
成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的。Cohen等人应用成对组合覆盖测试技术对Unix中的“Sort”命令进行了测试。测试结果表明覆盖率高达90%以上。可见成对组合覆盖是一种非常有效的测试用例设计方法。 成对组合覆盖要求任意两个因素(输入条件)的所有水平组合至少要被覆盖1次。组合覆盖的算法已经被很多工具实现,测试人员可以直接利用这些工具,例如:TConfig、微软的PICT等。下面介绍一下使用PICT设计测试用例的过程。
PICT,全称是Pairwise Independent Combinatorial Testing tool,是微软公司内部使用的一款成对组合的命令行生成工具,现在已经对外提供,可以从
官网:http://www.pairwise.org/ 常用的Pairwise工具集:http://www.pairwise.org/tools.asp上下载到。
PICT工具原理和算法实现可以参考http://msdn.microsoft.com/en-us/library/cc150619.aspx
- The model defines the parameters that need to be 'combined' and their values.
- Parameter names and values are defined by "parmname: val1, val2, ..." (list of comma seprated values).
- Values can be any string (numbers, names, logical names like "empty")
- You can define constraints to make sure the tool does not generate test case variants that are illegal.
- For details see PICT language reference
## PICT Example model: Parameters to the windows'FORMAT'command#Type: Primary, Logical, Single, Span, Stripe, Mirror, RAID-5Size:10,100,500,1000,5000,10000,40000Format method: quick, slowFile system: FAT, FAT32, NTFSCluster size:512,1024,2048,4096,8192,16384,32768,65536Compression: on, off# some simple constraintsIF [File system] ="FAT"THEN [Size] <=4096;IF [File system] ="FAT32"THEN [Size] <=32000;The number of test cases produced by different tools for the same model:
Model AETG 1) IPO 2) TConfig 3) CTS 4) Jenny 5) TestCover 6) DDA 7) AllPairs [McDowell] 5) PICT EXACT8) IPO-s 9) ecFeed 10) 34 9 9 9 9 11 9 ? 9 9 9 9 10 313 15 17 15 15 18 15 18 17 18 15 17 19 415 317 229 41 34 40 39 38 29 35 34 37 ? 32 37 41 339 235 28 26 30 29 28 21 27 26 27 21 23 28 2100 10 15 14 10 16 10 15 14 15 10 10 16 1020 180 212 231 210 193 181 201 197 210 ? 220 203
Pair Testing的更多相关文章
- hackerrank Similar Pair
传送门 Problem Statement You are given a tree where each node is labeled from 1 to n. How many similar ...
- Pair Project: Elevator Scheduler [电梯调度算法的实现和测试]
作业提交时间:10月9日上课前. Design and implement an Elevator Scheduler to aim for both correctness and performa ...
- RFID Exploration and Spoofer a bipolar transistor, a pair of FETs, and a rectifying full-bridge followed by a loading FET
RFID Exploration Louis Yi, Mary Ruthven, Kevin O'Toole, & Jay Patterson What did you do? We made ...
- Project Euler P105:Special subset sums: testing 特殊的子集和 检验
Special subset sums: testing Let S(A) represent the sum of elements in set A of size n. We shall cal ...
- Test Design Techniques - STATE BASED TESTING
Test Design Techniques - STATE BASED TESTING -Test note of “Essential Software Test Design” 2015-08- ...
- COMBINATORIAL TESTING
COMBINATORIAL TESTING -Test note of “Essential Software Test Design” 2015-09-06 Content 16.1 Coverag ...
- Project Euler 44: Find the smallest pair of pentagonal numbers whose sum and difference is pentagonal.
In Problem 42 we dealt with triangular problems, in Problem 44 of Project Euler we deal with pentago ...
- SAP成都研究院郑晓霞:Shift Left Testing和软件质量保证的一些思考
今天的文章来自Jerry的同事,曾经的搭档郑晓霞(Zheng Kate).郑晓霞是在Jerry心中是一位很有实力的程序媛,2011年从西安某软件公司跳槽到SAP成都研究院.当时,成都研究院的CRM团队 ...
- Bit error testing and training in double data rate (ddr) memory system
DDR PHY interface bit error testing and training is provided for Double Data Rate memory systems. An ...
随机推荐
- [AtCoder ARC076] F Exhausted?
霍尔定理 + 线段树? 咱学学霍尔定理... 霍尔定理和二分图完美匹配有关,具体而言,就是定义了二分图存在完美匹配的充要条件: 不妨设当前二分图左端集合为 X ,右端集合为 Y ,X 与 Y 之间的边 ...
- .net AutoMapper(对象与对象之间的映射器) 的简单使用
1.注册 /// <summary> /// AutoMapper 注册 /// </summary> public class AutoMapperConf ...
- Python基础入门一文通 | Python2 与Python3及VSCode下载和安装、PyCharm激活与安装、Python在线IDE、Python视频教程
目录 1. 关键词 2. 推荐阅读 2.1. 视频教程 3. 本文按 4. 安装 4.1. 视频教程 4.2. 资源下载 4.3. 安装教程 1. 关键词 Python2 与Python3及VSCod ...
- [Windows] GIF编辑器
目录 1. 功能简介 2. 下载地址 3. 使用教程 3.1. 其他视频转gif的方案 1. 功能简介 可以自定义录屏位置.区域大小做GIF 可以编辑GIF.压缩GIF等 可以将视频转换成GIF 可以 ...
- "不能将值 NULL 插入列 'ID',表 列不允许有 Null 值."
问题: "不能将值 NULL 插入列 'ID',表 列不允许有 Null 值." 原因: 在进行表创建的时候没有将主键自增字段添加标识. 在使用navicat进行表创建的时候一定要 ...
- docker安装es
下载镜像 docker pull docker.elastic.co/elasticsearch/elasticsearch:6.8.1 创建容器并映射docker run -e ES_JAVA_OP ...
- P2617 Dynamic Rankings(待修改区间第k大)
题目链接:https://www.luogu.org/problemnew/show/P2617 题目: 题目描述 给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序必须回答这样的 ...
- Codeforces 750E 线段树DP
题意:给你一个字符串,有两种操作:1:把某个位置的字符改变.2:询问l到r的子串最少需要删除多少个字符,使得这个子串含有2017子序列,并且没有2016子序列? 思路:线段树上DP,我们设状态0, 1 ...
- springboot集成hibernate
package com.jxd.Boot.hibernate.dao.impl; import java.util.List; import javax.persistence.EntityManag ...
- pycharm中能运行,但是往往py都要放到服务器上去跑,问题来了
py文件在linux上运行,导包错误: 在py文件中添加项目的根目录: import sys sys.path.append('项目路径') sys.path.append(os.path.dirna ...