因果图法在软件测试中的应用

一、因果图法介绍

  从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表。(百度百科)

  个人认为,因果图是通过分析因(输入)与果(输出),从而找出输入与输入、输入与输出、输出与输出之间的关系,画出便于观察的图示,来设计测试用例的方法。

二、方法步骤(自己总结)

  1.分析输入输出,并进行分类,找出输入输出分别有几种。

  2.分析输入之间的关系。

  3.分析怎样的输入会导致各种结果。

  4.根据分析结果画出因果图

  5.根据因果图画出判定表、人为删去判定表中不可能发生的情况。。

  6.找出测试用例

三、实例分析

  此处使用老师上课讲的例题

  产品说明书:有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”、或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。

  1.分析输入输出

  输入:C1投入1.5元硬币

     C2投入2元硬币

     C3按下“可乐” 按钮

     C4按下“雪碧” 按钮

     C5按下“红茶” 按钮

  输出:EF1退还0.5元硬币

     EF2送出“可乐”

       EF3送出“雪碧”

     EF4送出“红茶”

  2.分析输入之间的关系

    1)C1与C2为异或关系

    2)C3、C4、C5因投入硬币最多为2元 所以分析为异或关系

    3)C1(C2)与C3(C4、C5)为且的关系

    4)EF2、EF3、EF4为异或关系

    5)EF1与EF2(3、4)没关系

  3.分析什么原因导致结果

    1)EF1:C2与C3(4、5)导致EF1

    2)EF2(3、4):C1(2)与C3(4、5)导致

  4.画出因果图

    

  5.根据因果图画出判定表、人为删去判定表中不可能发生的情况。

  

  6.设计用例 就行了

 

posted on 2015-03-21 18:17  张书豪  阅读(10975)  评论(0编辑  收藏  举报