因果图测试规范

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

因果图设计测试规范

本文档介绍了针对终端软件测试的因果图法测试规范。

本测试规范中对移动终端用因果图法设计测试用例原理进行了详细的描述,并用实例加以说明如何使用该方法设计测试用例。包括设计测试用例时的使用范围,设计测试用例的步骤等。

本测试规范介绍了一种通用的测试方法,需要根据被测终端软件需求才能形成具体的测试用例。

1.简介 (4)

2.作用 .............................................................................................................. 错误!未定义书签。

3.因果图法基本规则 (4)

3.1.因果图的基本符号 (4)

3.2.因果图的约束符号 (5)

4.测试用例设计步骤 (6)

4.1.列出输入项和输出项 (7)

4.2.分析因果关系 (7)

4.3.标注约束形成因果图 (7)

4.4.转换成判定表 (7)

4.5.设计测试用例 (7)

5.因果图法举例 (8)

5.1.因果图法典型例子 (8)

5.2.飞信添加好友实例 (10)

6.因果图的优点和缺点 (13)

6.1.优点 (13)

6.2.缺点 (13)

7.名词解释 (14)

8.参考文档 (14)

9.修改历史 ...................................................................................................... 错误!未定义书签。

1.简介

因果图是一种测试用例的设计方法。能从用自然语言书写的程序规格说明的描述中找出的“因”(输入条件)和“果”(输出或程序状态的改变),通过因果图转换为判定表,最后依据判定表进行测试用例的设计。所生成的判定表可以不通过剪裁直接生成测试用例,但会导致测试用例的冗余。即使是对于一般的小规模软件,画出的因果图也可能是非常庞大的,以至于依据因果图的写出测试用例数量很庞大,给测试工作带来沉重的负担。

2. 适用范围

因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件涉及的各种组合情况。因果图法一般和判定表结合使用,通过映射同时发生相互影响的多个输入来确定判定条件。因果图法最终生成的就是判定表。采用因果图法能帮助我们按照一定的步骤选择一组高效的测试用例,同时,还能指出程序规范中存在什么问题,鉴别和制作因果图。

因果图法着重分析输入条件的各种组合,每种组合条件就是“因”,它必然有一个输出的结果,这就是“果”。

3. 因果图法基本规则

检查输入条件的组合不是容易的事情,即使把所有输入条件都划分成等价类,它们之间的组合情况也相当多。如果没有系统性的方法来选择输入条件的一个子集,可能导致低效率的测试。因此,必须考虑使用一种适合于描述这样一种情况的测试设计方法,对于多种条件的组合相应产生多个动作的形式,这就用到了因果图法。

3.1. 因果图的基本符号

通常在因果图中用ci表示原因,用ei表示结果;各结点表示状态,可取值0或1。0表示某状态不出现;1表示某状态出现。因果图的基本关系,如下图:

●恒等:若c1为1,则e1也为1;

若原因出现,则结果出现;若原因不出现,则结果也不出现

●非(~):若c1为1,则e1为0;

若原因出现,则结果不出现;若原因不出现,则结果出现。

●或(∨):若c1或c2或c3为1,则e1为1;

若三个原因中有一个出现,则结果出现;若三个原因都不出现,则结果不出现

●与(∧):若c1和c2都为1,则e1为1;

若两个原因都出现,结果才出现;若其中有一个原因不出现,则结果不出现。

3.2. 因果图的约束符号

为了表示原因和原因之间可能存在的约束条件,在因果图中附加一些表示约束条件的符号。如下图:

●从输入考虑,有四种约束;

1) 异(Exclusiveor):

a和b最多有一个为1,即a和b不能同时为1。

2) 或(In):

a、b、c至少有一个为1,即不能同时为0。

3) 唯一(Only)

a、b必须且仅有一个为1。

4) 要求(Request):

a是1时,b必须为1。

●从输出考虑,还有一种约束;

5) 强制(mandatory ):

表示当a是1时,b必须是0;而当a为0时,b的值不定。

4. 测试用例设计步骤

利用因果图设计测试用例一般要经过以下几个步骤:

1. 列出输入项、输出项;

2. 分析因果关系

3. 标注约束形成因果图

4. 转换成判定表

5. 设计测试用例

4.1. 列出输入项和输出项

分析软件规格说明的描述中哪些是原因,哪些是结果。原因常常是输入条件或者是输入条件的等价类,结果是输出。并将输入和输出分左右罗列出来。

输入需要包括外部消息输入,内部预置的用户状态、数据配置等所有对系统输出有影响的因素。

4.2. 分析因果关系

分析程序规格说明的描述中语义的内容,并将上一个步骤分析出来的输入和输出表示成连接各个原因与各个结果的因果初始图,给每个原因和结果赋予一个标识符,并加上原因和结果间的基本关系,通过这样的方式画出因果初始图。

4.3. 标注约束形成因果图

由于语法和环境的限制,有些输入之间或输入和输出之间的组合情况不可能出现,因此需要分别找出输入与输入之间的约束关系,并在因果图上使用若干个特殊的符号标进行约束关系的标注。

4.4. 转换成判定表

输入作为条件桩,输出作为动作桩,填入判定表中,根据因果图中输入和输出的基本关系,在判定表上对应的位置填写结果。在填写判定表时,可以用1和0标识,也可以用真和假标识。

判定表中的列就是规则,因为有些条件之间存在约束关系,或者语法和环境的限制,很多的组合是无效的,所以在判定表中要将这些无效组合形成的规则去掉。并且,为了达到减少测试用例的目的,需要合并相似的规则。

4.5. 设计测试用例

根据简化后的判定表中的每一列编写测试用例,这时的输入和输出在判定表中已经明确的表示出来了。

还有一些在判定表简化过程中被合并的,以及因果约束关系和及语法和环境的限制,不能出现的输入组合,为了检验软件的容错性,还应针对因果图中的各个约束条件,灵活采用等价类划分法和边界值法等测试方法进行有针对性的编写测试用例。

相关文档
最新文档