zoukankan      html  css  js  c++  java
  • 两两组合覆盖测试用例设计工具:PICT

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

    2016-08-31

    目录

    1 成对测试简介
    2 PICT使用
      2.1 安装 PICT
      2.2 使用PICT
    3 PICT算法
      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工具集:http://www.pairwise.org/tools.asp 处下载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,You
    Factor B:see,catch
    Factor 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,那么算法结束。

  • 相关阅读:
    paper:Exploiting Query Reformulations for Web Search Result Diversification
    Z3
    IDA pro 类型参考
    Angr包含什么
    Gcc编译选项
    Angr
    一张图系列之PLT-GOT
    ELF头文件
    BROP_轮子
    Pwn_
  • 原文地址:https://www.cnblogs.com/Ming8006/p/5827294.html
Copyright © 2011-2022 走看看