测试基础---测试用例之因果图和判定表

        在前面的等价类和边界值中,我们都重视的是输入条件,但是在实际测试中,许多操作时具有相互联系的,只有执行A动作才会产生B结果,像这种测试我们就需要使用今天的因果图了。还是用一个例子说明一下吧。

现在地铁一卡通充值,窗口越来越少了,都推荐自动充值机充值了,我们把它简化一下,只能投入50和100的人民币,相应的也只能充值50和100元。我们来分析一下他的流程吧:

1、投入50元,点充值50元,应该提示充值成功。

2、投入50元,点充值100元,应该提示金额不足,退回50元。

3、投入100元,点充值100元,应该提示充值成功。

4、投入100元,点充值50元,应该提示充值成功,并找零50元。

5、投入纸币后,没有选充值,应提示超时信息,并退还纸币。

这里假设不投币就无法选择充值。

首先我们先要分析因果关系,确定相互制约关系。因果图中的“因”就是各种输入条件,“果”就是输出结果。

1、  确定所有的输入条件

输入应该只有4种吧,(1)投入50元、(2)投入100元、(3)充值50元、(4)充值100元

2、  明确所有的输出结果

输出结果呢,(a)提示充值成功、(b)提示金额不足、(c)退50、(d)提示超时信息

3、  明确所有条件之间的制约关系以及组合关系

一次只能投50或100吧,所以条件1和条件2不能同时出现,同理条件3和条件4也不能同时出现;哪些可以同时出现呢?1和3、1和4、2和3、2和4也可以组合吧,1和2可以单独出现吧

4、  明确所有输出之间的制约关系以及组合关系

现在同样看输出之间的关系,输出a和d不能同时出现吧,b和d也不能同时出现,c和d也不行吧;a和c可以组合吧,b和c也可以组合吧。

5、  找出什么样的输入条件组合会产生哪种输出结果

1和3--->a

1和4--->b和c

1--->d

2和3--->a和c

2和4--->a

2--->d

6、  根据因果图,写出判定表

因果图就是左边画出条件,右边画出结果,用线的连接来表示他们的关系,这里就不画了,我会在附件里给大家详细的内容,因为有点多了。这里就直接给出判定表了

输入

 

 

 

 

 

 

1

T

F

T

T

F

F

2

F

T

F

F

T

T

3

F

F

T

F

T

F

4

F

F

F

T

F

T

输出

 

 

 

 

 

 

A

 

 

X

 

X

X

B

 

 

 

X

 

 

C

 

 

 

X

X

 

D

X

X

 

 

 

 

这个表给大家说一下,T表示条件为真,就是执行这个输入,当然了你也可以用1和0或Y和N来表示,F就是不执行了,X代表这个结果会出现。

7、  根据判定表设计测试用例

判定表出来了,用例也就出来了吧。

序号

输入

结果

1

投入50元,不做其他操作

应该提示超时信息

这里就写一个了,对应着把每一列都写出来

 

        下面就来看一下判定表的方法吧,刚才的案例里已经绘制了判定表了,他们是一样的了。判定表法就是略过因果图的绘制,直接列出所有组合进行筛选。(说实话绘制因果图也还是挺烦人的了,尤其是用根据,所以笔者通常都不画因果图的)

先来看一下关于判定表的一些术语吧,


条件桩:就是所有的输入了。动作桩:就是所有的输出结果了。条件项:就是针对条件桩的取值。动作项就是每列条件项产生的及结果了。还有一个术语就是规则,每一列就是一个规则了。

        那就看一下怎么建立判定表吧:

  1. 确定规则的个数。假如有n个条件,每个条件有两个取值(01),故有2的n次幂种规则
  2. 列出所有的条件桩和动作桩
  3. 填入条件项
  4. 填入动作项制定初始判定表
  5. 简化合并相似规则或者相同动作
这里给大家说一下简化合并的原则:如果筛选出不可能项后,如果条件项的数量小于2的5次幂,则可以不合并。合并时一次仅合并两列,并且这两列只有一个条件项值不同。

好了,今天就到这里吧。最后给大家总结一下今天的内容,因果图适用于各种逻辑条件,像控制类软件和游戏。对于判定表Beizer指出了适合使用判定表设计测试用例的条件:
›(1)规格说明以判定表的形式给出,或很容易转换成判定表。
›(2)条件的排列顺序不影响执行哪些操作。
›(3)规则的排列顺序不影响执行哪些操作。
›(4)当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
›(5)如果某一规则要执行多个操作,这些操作的执行顺序无关紧要。

对于这两种方法,我使用判定表多一点,大多数情况你只要分析出了输入输出,以及他们之间的制约组合关系,列出第一个案例第5步中的形式,测试用例其实已经就出来了。对测游戏感兴趣的同学可要好好看看了哦。Windows下的扫雷就可以用因果图的啊。
作业:思考一下我们的三角形问题的案例,用因果图怎么设计测试用例?

  • 6
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值