判定表:是分析和表达多逻辑条件下执行不同操作的情况的工具。
四要素:
(1)条件桩:列出问题所有的条件;
(2)动作桩:列出问题规定可能采取的动作;
(3)条件项:列出针对所列条件的取值;
(4)动作项:列出在条件项的各种取值情况下应该采取的动作。
合并原则:
---以相同的动作项出发
---相同的条件项直接合并
---相反的条件忽略
实践方法:
1、确定规则的个数(假定有n个条件,每个条件有两个取值(0,1),故有2的n次方种规则);
2、列出所有的条件桩和动作桩;
3、填入条件项(如1或0);
4、填入动作项(Y);
5、简化,合并相似规则。
优点:它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏;
缺点:不能表达重复执行的动作,例如循环结构。
因果图法:利用图解法分析输入的各种组合情况,得出判定表。
因果图的基本符号
图中左边的节点表示原因,右边的节点表示结果。恒等、非、或、与的含义:
恒等:若a=1,则b=1;若a=0,则b=0;
非:若a=1,则b=0,若a=0,则b=1;
或:若a=1或b=1或c=1,则d=1;若a= b= c=0,则d=0;
与:若a= b= c=1,则d=1;若a=0或b=0或c=0,则d=0。
画因果图时,原因在左,结果在右,由上而下排列,并根据功能说明书中规定的原因和结果之间的关系,用上述基本符号连接起来。在因果图中还可以引入一些中间节点。
根据功能说明在因果图中加上约束条件由于语法或环境限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。因果图的约束条件如图所示:
其中互斥、包含、唯一、要求时对原因的约束,屏蔽是对结果的约束。他们的含义如下:
互斥E:表示不同时为1,即a,b,c中至多只有一个1;
包含I:表示至少有一个1,即a,b,c中不同时为0;
唯一O:表示a,b,c中有且仅有一个1;
要求R:表示若a=1,则b必须为1。即不可能a=1且b=0;
屏蔽M:表示若a=1,则b必须为0
利用因果图导出测试用例一般要经过以下几个步骤:
1)分析软件规格说明的描述中哪些是原因,哪些是结果。原因是输入或输入条件的等价类,结果是输出条件。给每个原因和结果并赋予一个标识符,根据这些关系,画出因果图。
2)因果图上用一些记号表明约束条件或限制条件。
3)对需求加以分析并把它们表示为因果图之间的关系图。
4)把因果图转换成判定表。
5)将判定表的每一列作为依据,设计测试用例。
转载于:https://blog.51cto.com/hah11yn/1853326