zoukankan      html  css  js  c++  java
  • 多测师肖老师_设计用例方法之因果图___(4.4)

    因果图

    一、因果图

    (1)定义:因果图提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。
    其 中,原因是表示输入条件,结果是对输入执 行的一系列计算后得到的输出。
    (2)因果图方法最终生成的就是判定表。它适合于检查软件输入条件的各种组合情况
    (3)因果图的步骤:
    1.把大的系统规格划分解成可以测试的规格片段、
    2.分析分解后待测的系统规格,找出哪些是原因,哪些是结果
    3.画出因果图
    4.把因果图转换成判定表
    5.简化判定表
    6.用判定表中的每一列生成测试用例
    (4)认识因果图的符号

     

     

     恒等: 有钱==恒等==富人     

      非:有钱==非==穷人

    或:有钱,有车,有房     有其中一个或多个  =========富人

    与:有钱,有车,有房   三个都满足  =========富人   

    =====================================================

    案例:

    一个处理单价为5角钱的饮料的自 动售货机。其规格说明如下:
    若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。
    若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

     

     (4)因果图转换判定表的方法:

    1. 将因果图中的所有条件(因)填入判定表 的条件桩中;
    2. 将因果图中的所有动作(果)填入判定表 的动作桩中;
    3. 根据因果图确定各个条件组合对应的动作, 并且确定判定表中各个规则的条件项和动 作项,在需要时优化判定表
     
    (5)
    因果图的优点/缺点
    优点:
    1. 等价类法尽管各个输入条件可能出错的情况都考虑 到了,但是多个输入条件组合起来出错的情况却被 忽略了
    2. 因果图法能够帮助我们按照一定步骤,高效的选择 测试用例,设计多个输入条件组合用例
    3. 因果图分析还能为我们指出,程序规格说明描述中 存在什么问题
    缺点:
    1. 输入条件与输出结果的因果关系,有时难以从软件 需求规格说明书得到
    2. 即使得到了这些因果关系,也会因为因果关系复杂 导致因果图非常庞大,测试用例数目及其庞大
     ====================================
    案例;
    某软件规格说明书包含这样的要求:
    第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。
    解答:
    根据题意,原因和结果如下:
    原因:
    1——第一列字符是A;
    2——第一列字符是B;
    3——第二列字符是一个数字。
    结果:
    21——修改文件;
    22 ——给出信息L;
    23——给出信息M。
    其对应的因果图如下:
    11为中间节点;考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束。
  • 相关阅读:
    优先队列插入、删除
    堆排序
    UVALive 2474 Balloons in a Box(枚举)
    二叉树的建立、四种遍历、求深度、求叶子结点数
    说说尾递归(转载)
    1#Two Sum(qsort用法)
    马克思:青年在选择职业时的考虑
    最要紧的是,我们首先要善良,其次是要诚实,再次是以后永远不要相互遗忘。
    多重背包优化算法
    poj2976 Dropping tests(01分数规划 好题)
  • 原文地址:https://www.cnblogs.com/xiaolehua/p/15675496.html
Copyright © 2011-2022 走看看