• 13
  • 13
分享
  • 测试用例生成工具PICT的安装与使用——软件测试圈
  • 曼倩诙谐 2021-02-19 10:43:59 字数 1416 阅读 2466 收藏 13

  PICT(Pairwise Independent Combinatorial Testing,成对独立组合测试)是微软开发的一款测试用例生成工具(生成配对测试用例的工具很多,感兴趣的可以参考http://www.pairwise.org/tools.asp的介绍),它可以生成测试用例和测试配置,其理论基础是成对测试技术(Pairwise Testing,之前有文章单独介绍过,在此不多介绍)。

  一、PICT安装

  通过官网链接?http://download.microsoft.com/download/f/5/5/f55484df-8494-48fa-8dbd-8c6f76cc014b/pict33.msi下载安装包,然后一路点击next安装即可。

  安装成功后验证:打开cmd命令终端,输入pict显示如下即证明安装成功。

1-1.png

图1 pict安装成功验证

  二、PICT使用

  1.建模

  PICT是一个命令行工具。在使用PICT生成用例前,需要准备好一个模型文件,PICT将会根据模型文件自动生成组合列表。根据配对测试基于的假设:模型文件中,每个测试点/维度都是正交的,且每个测试点/维度具有有限的影响因子。假如针对邮箱注册功能使用PICT生成用例,注册功能包含:用户名、密码、手机号、是否同意服务协议4个测试维度,每个测试维度所包含的有限影响因子如下表所示。

1-2.png

表1 测试分析建模

  2.编辑模型文件

  根据建模结果,编辑模型文件,如下图所示:

1-3.jpg

图2 模型文件

  3.运行模型文件

  打开cmd命令终端,运行pict test.txt>test.xls,将测试点组合结果输出到test.xls文件。结果如下图所示,共生成157个测试点,在原本13*12*5*2=1560个用例基础上,用例精减率达到90%:

1-4.png

图3 pict执行结果

  4.约束条件

  在2、3中的例子,使用的是无约束条件pict模型。而在现实中,对于已经经历多个迭代的版本,可能有些组合条件已经测试,因此,可以在pict的模型文件中使用约束条件将之排除。如2、3例中,添加约束条件:“if [用户名] = "为空" or [密码] = "为空" then [手机号] <> "为空";“,表示如果“用户名”或“密码”为空时,“手机号”不为空。

1-5.jpg

图4 添加约束条件的模型文件

  执行上述添加约束条件后的模型文件,生成test1.xls结果如下图所示,与无约束条件的图3想比,测试点数仍为157个,但测试点中不包括:“用户名”=“为空”,“手机号”=“为空”和“密码”=“为空”,“手机号”=“为空”这两例。

1-6.png

图5 添加约束条件后pict执行结果

  三、效益

  PICT是使用较广的一种配对测试用例生成工具。对于多维度多因子的组合测试,使用PICT可以快速、有效地筛选出经过配对测试筛选后的组合,有助于测试人员节省测试要点整理时间和测试执行时间。

  四、FAQ

  1.pict执行模型文件报错,错误提示为乱码?

  答:pict仅仅支持ANSI和UTF8 ,此处保存为UTF8仍然乱码,则另存为ANSI就可以了。

  2.执行模型文件错误,提示没有定义参数值?

  答:模型文件中的冒号:和逗号,需要为英文字符。

  3.加入约束条件后执行文件,提示输入错误?

  答:约束条件字符串值用双引号而不是单引号。



作者:刘晓佳Rachel   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 在宣布关停“QQ花藤”不到10天后,8月29日,腾讯又宣布即将停止《冒险岛2》在中国大陆地区的运营。实际上不只是腾讯,最新一些互联网大厂均迎来了App下架潮。据Tech星球报道,据不完全统计,今年1月到8月,各互联网大厂总共有60多款App密集下架,其中腾讯最多,腾讯在今年已经宣布下架的产品(含游戏类)已接近40款,平均每月下架5款产品。截至今年7月,腾讯下架了《QQ堂》、《QQ连连看》、《QQ美女找茬》、《全民斩仙》、《捕鱼来了》等多达28款游戏。网易游戏在今年也陆续下架了《黑潮之上》、《猎手之王》、《月神的迷宫》等6款产品。字节跳动在今年也有多款游戏下架,比如《战争艺术》、《全明星激斗》、...
            0 0 856
            分享
          •   Windows系统压测过程中JMeter报错,报错内容为:Address already in use: connect。  解决方案有两种,我们逐个来讲一下。  方法一  修改操作系统注册表:  1、打开注册表:regedit。  2、找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP\Parameters。  3、新建DWORD值,name:TcpTimedWaitDelay,value:30(十进制) ——> 设置为30秒(默认240)。  4、新建DWORD值,name:MaxUserPort,value:...
            0 0 1502
            分享
          •   有很多小伙伴想转行进入测试行业,但是又不知道从何入手,就导致空有豪情壮志但是并没有付诸行动。那么我们到底应该从何入手呢?  首先我们应该先去了解一下,测试都分为哪几种?比如说黑盒测试、白盒测试、功能测试、性能测试、自动化测试、安全性测试、兼容性测试等等。  这里面最基础的应该就是功能测试的黑盒测试。  什么是黑盒测试呢,顾名思义就是我们只管输入和输出,至于实现方式是什么我们不关心。  那么什么是功能测试呢?功能测试就是对产品的各项功能进行验证是否符合需求。  那么我们验证是否符合要求的标准又是什么呢?  一个就是UI设计图及需求说明书,一个就是实际用户的需求。  先来说一下UI设计图和需求...
            12 13 1738
            分享
          •   日常大家聊天时经常提及一个关键词——大环境不好,由此带来了很多行为的变化,有的人迷茫,有的人躺平。本文给大家介绍发生在我身上和身边的真实案例,希望能带给你一些输入。  案例一:曾经的我也极度焦虑  我是2008年参加工作的,届时正处于美国次贷危机中,危机产生的影响是全球范围的。时常看到新闻上有各种公司倒闭的信息,周围人也经常讨论找工作的不易,大环境的惨烈程度与近两年无异。我作为一个职场新鸟,每天极度焦虑,生怕公司会倒闭。每天有大量时间是焦虑不安的精神内耗状态,产生的影响是做事儿没有规划、学习动力不足、容易走神儿、爱做简单的、机械的事儿、不自信等。经过了好长一段时间,我觉得这种状态对我的负向...
            0 0 201
            分享
          •   fiddler抓手机app的请求,估计大部分都会,但是如何只抓来自app的请求呢?  把来自pc的请求过滤掉,因为请求太多,这样会找不到重要的信息了。  环境准备:  1.电脑上已装fiddler  2.手机和电脑在同一局域网  一、设置  1.fiddler>Tools>Fiddler Options>Connections 勾选Allow remote computers to connect。  2.记住这里的端口号:8888,后面会用到。  二、查看电脑IP  1.打开cmd,输入:ipconfig,记住这个IPv4地址。  >>ipconfig  三...
            0 0 1902
            分享
      • 51testing软件测试圈微信