六、功能测试-因果图
1、为什么采用因果图测试用例的测试方法?
判定表设计法在设计测试用例的过程中,考虑了输入与输入存在约束约束关系,没有考虑到输入与输出之间的约束关系。简单的业务逻辑可以用判定表解决,复杂的约束关系就不太适合了。
2、什么是因果图设计法?
因果图在软件测试用例的设计过程中,用于描述输入与输入、输入与输出之间存在的约束关系。
针对需求规格,将原因和影响分为2组4类:输入与输出、输入与输入。
输入与输出的关系主要有:恒等、非、与、或
恒等:若输入条件发生,则一定会产生对应的输出,若输入条件不发生,则一定不会产生对应的输出
非:若输入条件发生,则一定不会产生对应的输出,若输入条件不发生,一定会产生对应的输出
与:多个输入条件,只有所有输入条件发生时,才会产生对应的输出
或:在多个输入条件中,只要有一个发生,则会产生对应输出。
输入与输入之间同样存在异、或、唯一、要求等4种关系
异(所有输入条件中至多有一个发生,可以一个条件条件也不发生)
或(所有输入条件至少有一个输入条件发生,也可以多个条件共存)
唯一(所有输入条件有且只有一个发生)
要求(所有输入条件中只要有一个条件发生,其他的输入也会发生)
3、因果图设计测试用例步骤?
一、根据需求确定原因(输入)和结果(输出)
二、根据需求中输入与输出的关系 ,输入与输入之间的关系,画出因果图
三、画出判定表,根据因果图,得到最终的最终判定表
四、根据判定表得到用例规则,在结合等价类和边界值用例设计方法细化测试用例
4、因果图设计测试用例的优缺点?
优点:能够帮助测试用例设计者快速了解需求,理解业务逻辑,然后快速设计判定表,从而得到所需的测试用例,在因果关系复杂的系统中,可采用该方法
缺点:在使用规则的过程中注意规则的规模
5、因果图设计测试用例示例?
第一步:根据需求找出输入(原因)和输出(结果)
输入(原因):第一列是A(C1) 第一列是B(C2)第二列是数字(C3)
中间结点:第一列为A或者B(C12)
输出(果):输出M(E1),修改文件(E2),输出L(E3)
第二步:把相同类型的原因放在一起,类似原因的中间节点连好线,对应的结果放在对面。方便连线
第三步:根据因果图输入与输出的关系画出判断表,根据因果图的输入与输入的关系去掉表里的不符合的规则
第四个:根据判定表抽取测试规则,编写测试用例,用等价类划分和边界值对测试用例进行细化和补充