测试用例设计之因果图-判定表设计法

一、为什么会出现因果图法

  •  等价类划分法和边界值分析方法都是着重考虑输入条件。
  • 而不考虑输入条件的各种组合、输入条件之间的相互制约关系。
  • 如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字。
  • 因此必须考虑一种适合于描述多种条件的组合、产生多个相应动作的测试方法,这就需要利用因果图(逻辑模型)。

二、什么是因果图

鱼骨图(又名因果图、石川图),指的是一种发现问题“根本原因”的分析方法,现代工商管理教育将其划分为问题型、原因型及对策型鱼骨图等几类。

三、什么是判定表

判定表是分析和表达多逻辑条件下执行不同操作的工具。

四、因果图-判定表的解释

  • 一些程序的功能可以用决策表的形式来表示,并根据输入条件的组合情况规定相应的操作。
  • 因此,可以考虑为决策表中的每列设计一个测试用例,以便测试程序在输入条件的某种组合下的输出是否正确。
  • 概况地说,因果图方法就是从程序规格说明书的描述中找出因(输入条件)和果(输出结果或程序状态的改变)。
  • 将因果图转换为判定表,为决策表中的每一列设计一个测试用例。
  • 这种方法考虑到了输入情况的各种组合以及各个输入情况之间的相互制约关系。

五、判定表的组成

  • 判定桩:列出了问题的所有条件,通常认为列出得条件次序无关紧要
  • 动作桩:列出了问题规定可能采取的操作,这些操作的排列顺序没有约束
  • 条件项:列出针对它左列条件的取值,在所有可能情况下的真假值。
  • 动作项:列出在条件项的各种取值情况下应该采取的动作。

六、判定表的设计步骤

  1. 分析软件规格说明中哪些是原因,哪些是结果,并给每个原因和结果赋予一个标识符。
  2. 分析软件规格说明中语义的内容,找出原因与结果之间、原因与原因之间对应的关系,根据这些关系画出因果图。
  3. 由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特定的情况,在因果图上使用一些记号表明约束或限制条件。
  4. 把因果图转换为判定表。
  5. 根据判定表汇总的每一列设计测试用例。

七、还是加法器的例子:功能为求出[-99,99]之间的任意两位数的和

(1)分析输入条件和输出条件

(2)分析条件互斥

(3)分析、简化并画出判定表

八、余额宝的例子 

发布了132 篇原创文章 · 获赞 40 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/qq_36622009/article/details/104350138