16 用例设计方法-判定表

判定表

定义

是一种分析和表述工具,被测对象针对若干输入作出相应的反应;在遇到复杂业务逻辑时,判定表可以帮助理清业务逻辑

“输入”,不一定就是具体的输入动作,也可以是可变更的条件

重要概念:

     条件 条件桩: 需求规格说明书定义的所有输入
       条件项: 条件桩所有输入数据的真假值
    动作 动作桩: 针对条件,被测对象可能采取的所有操作
       动作项: 针对动作桩,被测对象可能的响应值
    规则 : 动作项和条件项组合在一起,形成的所有业务逻辑规则

判定表应用步骤

  1. 理解需求,确定条件桩,动作桩
    • 列条件桩、动作桩时,把所有可判断的对象都列出来,避免遗漏(无用之后再删减);
  2.  优化设计判定表:根据业务逻辑优化;说的比较模糊,理解不透彻
  3. 填写动作项:以上的例子中,填写的是是各个条件桩组合起来对应的动作桩的动作项,也即是0、1结果
  4. 根据判定表的输出结果,合并判定表/简化判定表(非必须)
    • 简化原则:如果输出相同,在其对应的输入中,有且只有一个条件的取值对动作不产生影响,则可合并(为啥?是不是我写错了?)
  5. 抽取测试用例:

 实例1:

  结合以下例子,理解以上概念:

     

注释:如果使用等价类分析,无法测试到“可以主被叫”的情况;

等价类只会对“有效等价类”做组合,不会对“无效等价类”做组合,所以不会出现“未欠费、未停机”的“可以主被叫”的情况。

实例 2 

需求:

  订购单的检查:如果金额 > 500, 又未过期,发批准单和提货单

    如果金额 > 500, 但过期了,则不发批准单

    如果金额 < 500,不论是否过期,都发批准单和提货单,在过期的情况下,还需要发出通知单。

  
  解释:如上情况比较简单,所以即使没有判定表也是可以(将条件清晰的罗列出来,逐个条件设计测试用例。)但是在复杂情况,判定表会发挥其作用。

   

 注释:以上 是 2、4, 不是3、4;2、4 符合合并原则,输出相同;3、4的输出不同;

原文地址:https://www.cnblogs.com/George19950505/p/12247045.html