|
知识路径: > 测试技术的分类 > 黑盒测试案例设计技术 > 测试用例设计方法 > 因果图法 >
|
相关知识点:2个
|
|
|
|
因果图法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。
|
|
|
|
①分析程序规格说明的描述中,哪些是原因,哪些是结果。原因常常是输入条件或是输入条件的等价类,而结果是输出条件。
|
|
|
②分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”。
|
|
|
③标明约束条件。由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用若干个标准的符号标明约束条件。
|
|
|
|
|
因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而增加。
|
|
|
事实上,在较为复杂的问题中,这个方法常常是十分有效的,它能有力地帮助我们确定测试用例。当然,如果哪个开发项目在设计阶段就采用了判定表,也就不必再画因果图了,而是可以直接利用判定表设计测试用例了。
|
|
|
通常在因果图中,用Ci表示原因,Ei表示结果,其基本符号如下图所示。各结点表示状态,可取“0”或“1”值。“0”表示某状态不出现,“1”表示某状态出现。
|
|
|
|
|
①恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现。
|
|
|
②非(~):若原因出现,则结果不出现;若原因不出现,则结果出现。
|
|
|
③或(∨):若几个原因中有1个出现,则结果出现;若几个原因都不出现,则结果不出现。
|
|
|
④与(∧):若几个原因都出现,结果才出现。若其中有1个原因不出现,则结果不出现。
|
|
|
为了表示原因与原因之间、结果与结果之间可能存在的约束条件,在因果图中可以附加一些表示约束条件的符号。从输入(原因)考虑,有4种约束,例如:(a)、(b)、(c)、(d)。从输出(结果)考虑,还有1种约束,例如:(e),如下图所示。
|
|
|
|
|
①E(互斥):表示a、b两个原因不会同时成立,两个中最多有一个可能成立。
|
|
|
②I(包含):表示a、b、c这3个原因中至少有一个必须成立。
|
|
|
③O(惟一):表示a和b当中必须有一个,且仅有一个成立。
|
|
|
④R(要求):表示当a出现时,b必须也出现。a出现时不可能b不出现。
|
|
|
⑤M(屏蔽):表示当a是1时,b必须是0。而当a为0时,b的值不定。
|
|
|