2、约束
输入状态还存在着某些依赖关系,这种关系称为约束。
约束符号如图3-5所示。
图3-5 约束符号图
E约束(异):a和b中最多有一个可能为1,即a和b不能同时为1。
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个组成部分