zoukankan      html  css  js  c++  java
  • 测试用例设计因果图

    1. 定义

    因果图法就是从程序规格说明书的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表,最后为判定表中的每一列设计一个测试用例。

    首先我们来了解一下因果图的基本符号:

    2. 应用的范围

    更复杂的条件组合,2^n,n比较多的时候

    3. 步骤

    1)         根据程序规格说明书描述的语义内容,分析并确定“因”和“果”;

    2)         将“因”和“果”表示成 “因果图”;

    3)         在因果图上使用若干个约束符号来标明约束条件;

    4)         将得到的因果图转换成判定表;

    5)         为判定表中每一列所表示的情况设计一个测试用例。

    4. 案例

    以中国象棋中马的走法为例子,具体说明:

    1、如果落点在棋盘外,则不移动棋子;

    2、如果落点与起点不构成日字型,则不移动棋子;

    3、如果落点处有自己方棋子,则不移动棋子;

    4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;

    5、如果不属于1-4条,且落点处无棋子,则移动棋子;

    6、如果不属于1-4条,且落点处为对方棋子 (非老将) ,则移动棋子并除去对方棋子;

    7、如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。

    案例分析--因果图

    1)       根据程序规格说明书描述的语义内容,分析并确定“因”和“果”;

    原因:

    1、  落点在棋盘外;

    2、  不构成日字;

    3、  落点有自方棋子;

    4、  绊马腿;

    5、  落点无棋子;

    6、  落点为对方棋子;

    7、  落点为对方老将。

    结果:

    21、 不移动;

    22、移动;

    23、移动己方棋子消除对方棋子;

    24、  移动并战胜对方。

     

    2)    将“因”和“果”表示成 “因果图”,并标明约束条件;

    3)       将得到的因果图转换成判定表;

    11这个结点称做中间结点,是为了让因果图的结构更加明了,简化因果图导出的判定表。分析得出以下两个结论:

    只有1、2、3、4都不成立时,产生11,跟5、6、7结合分别得出22、23、24三个结果;

    不管5、6、7哪个成立,只要1、2、3、4有一个成立,就产生结果21;再加上落点有自方棋子的状况。

    可以得到判定表如下:

      进一步分析,将各种不可能产生的组合情况,取消掉,图中用灰色表示。这些都是之前没有写的一些约束条件导致的。比如落点在棋盘外,那么落点就不可能在对方棋子上了。

    4)  为判定表中每一列所表示的情况设计一个测试用例。

    5. 总结

      因果图常和判定表结合起来使用,先用因果图后用判定表.

    不断的总结,才能不断的提高;不断的思考,才能不断的进步!
  • 相关阅读:
    计数
    表单验证
    获取位置
    jq事件
    jq选择器
    PHP超文本预处理器(通用开源脚本语言)
    文字超出两行显示省略号
    Vim配置:在win10下用vim编译运行C/C++(异步插件管理,一键运行)
    实验楼HTML基础入门学习
    博客园美化:添加目录,标题设置,代码高亮,主题设置
  • 原文地址:https://www.cnblogs.com/nzyjlr/p/1893230.html
Copyright © 2011-2022 走看看