因果图、判定表法

一、应用场合
    在界面中有多个控件,控件之间有组合或限制关系,不同的输入组合会对应不同的输出结果,如果想弄清楚不同的输入组合到底对应哪些输出结果,可以使用因果图/判定表法。(因果图/判定表法比较适合测试组合数量较少的情况,一般少于20种)

二、因果图
    因(原因):输入条件
    果(结果):输出结果
    因果图:就是通过画图的方式来表示输入条件(因)和输出结果(果)之间的关系。

三、因果图中的图形符号
    1、基本图形符号
      表示的是因与果之间的关系
        恒等
          如果a=1 ,那么b=1
          如果a=0,那么b=0

        

        与
          与的含义:只有所有条件都为1时,结果为1,有任何一个条件为0(或者所有条件为0)那么结果为0.
          简化:全1为1,有0为0
          分析过程如下图:

          

          与的图形符号:

          

        或
          或的含义:只有所有条件都为0时,结果为0,有任何1个条件为1(或者所有条件为1)时,结果为1
          简化:全0为0,有1为1

          

          或的关系图形符号:

          

        非:取反
          如果a=1,那么b=0
          如果a=0,那么b=1

          

    2、限制关系图形符号
       限制关系图形要么在因(输入条件)之间,要么在果(输出结果)之间。
        互斥(E-exclude)
          含义:可以不选,如果选只能选1个

        

        唯一(O-Only)
          含义:有且只有1个(必须要选,而且只能选1个)
          唯一和互斥的区别:
            互斥可以不选
            唯一必须要选1个

            

        包含(I-include)
          含义:至少选1个(可以多选,不能不选,最少得选1个)

          

        要求(R-required)
          含义:如果a=1 那么要求b必须是1,反之如果a=0,那么b值无所谓

          

        屏蔽(M-masked)
          含义:当a=1时,b=0
          当a=0,b的值有可能是1,也有可能是0

          

四、测试步骤
  被测程序:交通一卡通充值模拟系统
  步骤1:了解需求,找出所有的输入条件(因)
    投币50元
    投币100元
    充值50元
    充值100元
  步骤2:找出所有的输出结果(果)
    成功充值并退卡
    找零
    错误提示并退卡
    将因和果填入《判定表》中

    

  步骤3:找出输入条件之间的组合和限制关系。

  步骤4:明确不同的输入组合会产生怎样的输出结果,画因果图,填判定表。(在实际工作中可以只填判定表,不画因果图)

五、总结

  1、测试步骤

    步骤1:分析需求,找出所有的输入条件

    步骤2:找出所有的输出结果

    步骤3:找出输入条件中的所有组合和限制关系

    步骤4:明确每种输入组合对应的输出结果,填判定表,画因果图(熟练后,画因果图可以省略)

      说明:

        1)画因果图只是一种辅助工具,通过分析最终得到判定表,再通过判定表编写测试用例。但是有时画因果图比较麻烦,影响测试效率,所以在应用熟练之后,可以省略画因果图直接填判定表,进而编写测试用例。

        2)判定表的缺点:判定表中输入条件的限制关系不好体现。

          如何解决:可以在判定表中添加备注,将限制关系写入备注部分。

    步骤5:根据判定表,编写测试用例

       每1列表示1种组合,写1条用例

       

  2、因果图/判定表适合测试控件的组合情况,而且适合测试组合数量比较少的情况。常见的控件有:按钮(按/不按),单选按钮(选/不选),复选框(选/不选),选项较少的下拉列表等

    

    

  3、判定表的特点:

   1)输入条件的顺序是无关紧要的

   2)输出结果的顺序是无关紧要的

   3)先测哪种组合,后测哪种组合是无关紧要的

   4)每种组合之间是相互独立的

  4、介绍判定表的组成项:

    

转载于:https://www.cnblogs.com/KalosOwen/p/8244846.html

测试用例--因果图、判定表法相关推荐

  1. 【4】测试用例设计-判定表法

    判定表适用于有几个原因,导致几个结果的情况. 实际测试中,如果输入条件较多,再加上各种输入与输出之间相互的作用关系,画出的因果图会比较复杂,容易使人混乱.为了避免这种情况,人们往往使用决策表法代替因果 ...

  2. 因果图+判定表法+场景法分析

    一. 因果图 1.原因和结果的关系 1)恒等,原因A成立,b一定成立 2)非,原因A成立时,结果b一定不成立 3)或,原因ABC只要一个成立,D成立 4)与,原因ABC只有都成立,D成立 二.加上约束 ...

  3. 测试用例方法-判定表法

    判定表法案例 若用户欠费或关机,则不允许主被叫 等价类划分法和边界值分析法都是着重考虑单个输入的输入条件,但是没有考虑输入条件的各种组合,输入条件与输出条件之间的相互制约关系.所以要使用判定表法才能解 ...

  4. 黑盒测试用例设计 - 判定表法

    什么是判定表? 判定表法也叫判定驱动法,是分析和表达多逻辑条件下执行不同操作的情况的工作. 应用场合:只要适用于多条件的内容组合与结果分析 它由以下几个内容组成: 条件桩(condition stub ...

  5. 测试用例之因果图/判定表

    测试用例之因果图/判定表 测试用例   因果图和判定表(网上搜集的案例,不喜勿喷) 一. 适应场合: 在一个界面中有多个控件,如果控件之间存在组合关系或者限制关系,不同的控件组合会产生不同的输出结果, ...

  6. 测试用例---常用设计方法,等价类,边界值,因果图判定表,正交表,场景法,大纲法

    等价类划分 1.概念:等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出那些是有效的,那些是无效的,每个区域选取典型数据为测试用例.每个区域中的输入时等价的 ...

  7. 学习软件测试(三)测试用例、测试用例的设计方法(等价类划分法、边界值分析法、判定表法、因果图法、正交排列法、场景法、错误推测法)

    目录 测试用例 测试用例八大要素 测试用例的设计方法 等价类划分法 等价类操作步骤 边界值分析法 边界范围 边界值法的操作步骤 案例1 案例2 判定表法 为什么使用判定表法 判定表法的四个组成部分 判 ...

  8. 软件测试用例设计方法-判定表法

    接下来4篇分享的测试用例方法,实际工作中不常用,但是能够为测试用例提供设计思路. 首先分享的是,判定表法. 等价类划分法和边界值法着重考虑输入条件,但是忽略了输入条件的各种组合.输入条件之间的相互制约 ...

  9. 测试方法——因果图法和判定表法

    因果图法介绍: 一.应用场合 因果图法:使用一种适合于描述对于多种条件的组合,并产生多个不同结果的测试方法.因果图法主要是输入条件与输出结果之间的依赖关系,通过画出便于观察的图示,结合判定表法来设计测 ...

最新文章

  1. SnackBar使用注意事项
  2. 启动 ServiceFabric Windows服务报1053
  3. AC自动机 HDOJ 5384 Danganronpa
  4. C++ GUI Qt4编程(12)-6.1FindFileDialog
  5. 模式主节点ORACLE DG介绍(物理无实例)
  6. 【干货】2021百度营销通案.pdf(附下载链接)
  7. Hadoop平台搭建
  8. MySQL存储过程(三)——存储过程分支流控语句
  9. hibernate中session 与JDBC中 connection分析
  10. 网络安全专栏——了解防火墙(图文介绍天网个人防火墙,实例测试)
  11. 如何查看sql2000 sp4是否安装成功 及sp4补丁安装
  12. systrace的使用
  13. 8-2SpringDataJpa
  14. 计算机基础与office应用教程,计算机基础与Office 2010实用教程
  15. 计算机网络学习笔记11(P2P)
  16. 微信公众上传头像和分享
  17. 常用数字电路模块:计数器与分频电路(一)
  18. Simulink三相电机仿真(2)
  19. 一寸Timing一寸金,寸金能买寸光阴——CCD
  20. java正则匹配ip_正则表达式 - 匹配 IP 地址

热门文章

  1. python与人工智能的关系_广东江门的北大青鸟学校了解到人工智能与Python关系
  2. solving order
  3. 指针与数组的关系---初始化
  4. 二进制转换为三进制 ——C++实现
  5. 试题12 交叉排序(小-大,大-小)
  6. OpenGL基础9:纹理
  7. C#基础5.1:StringBuilder和StopWatch类
  8. 二层交换:网桥(交换机)
  9. opencv Scharr、Canny、LOG边缘提取效果对比
  10. 吴恩达神经网络和深度学习-学习笔记-6-训练集、验证集和测试集 + 偏差bias和方差variance