I 约束(或):a、b、c中至少有一个必须为1,即 a、b、c不能同时为0。
O约束(唯一):a和b必须有一个且仅有一个为1。
R约束(要求):a是1时,b必须是1,即a为1时,b不能为0。
M约束(强制):若结果a为1,则结果b强制为0。
3、利用因果图导出测试用例的基本步骤
利用因果图导出测试用例一般要经过以下几个步骤:
1)分析软件规格说明的描述中哪些是原因,哪些是结果。原因是输入或输入条件的等价类,结果是输出条件。黑盒测试工具给每个原因和结果并赋予一个标识符,根据这些关系,画出因果图。
2)因果图上用一些记号表明约束条件或限制条件。
3)对需求加以分析并把它们表示为因果图之间的关系图。
4)把因果图转换成判定表。
5)将判定表的每一列作为依据,设计测试用例。
判定表驱动法
因果图方法中已经用到了判定表(Decision Table),它是分析和表达多逻辑条件下执行不同操作的情况下的工具。在程序设计发展的初期,判定表就已被当做编写程序的辅助工具了。由于判定表测试严格,能够将复杂的逻辑关系和多种条件组合的情况表达得既具体又明确,针对不同的逻辑条件组合值,分别执行不同的操作,因此,使用判定表能够设计出完整的测试用例集合。判定表是一种针对存在条件、动作关系或者因果关系的特性测试的用例设计方法。
图3-6 判定表的4个组成部分
字体:推荐标签:
1、判定表的组成
判定表通常由4个部分组成,如图3-6所示。
1)条件桩(Condition Stub):列出了问题的所有条件,列出条件的次序没有约束。
2)动作桩(Action Stub):列出问题规定可能采取的操作,这些操作的排列顺序无关紧要。
3)条件项(Condition Entry):列出条件桩给出的条件并列出所有可能的取值。黑盒测试工具针对条件桩的条件和条件项的取值,判断在整个程序模块中的所有可能的情况下其结果的真假值。
4)动作项(Action Entry):列出在条件项的各种取值情况下应该采取的动作。
2、判定表的建立步骤
判定表的建立步骤如下:
1)确定规则的个数,例如,有n个条件,那么决策表中就有2n个规则(每个条件取真、假值)。
2)列出所有的条件桩和动作桩。
3)填入条件项。
4)填入动作项,得到初始判定表。
5)简化判定表,合并相似规则。
场景法

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,
有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。
1、场景法的基本流和备选流
场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有的基本流和备选流,如图3-7所示。
图3-7 场景法的基本流和备选流
图3-7中经过用例的每条路径都用基本流和备选流来表示,直黑线表示基本流,是经过用例的最简单路径。下面三点给出了一个备选流的开始和结束的可能历程,它可以在某个特定条件下执行:
可能重新加入基本流中(如备选流1和3)。
也可能从另一个备选流(如备选流2)中引出。
或者终止用例而不再重新加入到某个流(如备选流2和4)。
2、场景法的设计步骤
场景法的设计步骤如下:
1)根据说明,描述出程序的基本流及各项备选流。
2)根据基本流和各项备选流生成不同的场景。
3)对每一个场景生成相应的测试用例。
4)对生成的所有测试用例重新审查,去掉多余的测试用例,确定测试用例后,为每一个测试用例确定测试数据值
功能图法是用功能图形象地表示程序的功能说明,由状态迁移图和布尔函数组成,同时需要依靠判定表或因果图表示逻辑功能,并机械地生成功能图的测试用例。功能图法是黑盒、白盒混合用例的设计方法。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-26950-3.html
获得更好的发展