白盒测试用例设计问题演示

   对这样一段代码:

    if (a>2 && b<3 &line;&line; (c>4 && d<5))

    statement;

    请问,按照各种覆盖方法应该怎么考虑它的测试?

    我们这里只给出Condition/Decision Coverage和Modified Condition/Decision Coverage两种覆盖方法的用例设计。

    Condition/Decision Coverage:
        条件                                      结果
    a<2   b>3   c<4    d>5                  (a<2 && b>3 &line;&line; (c<4 && d>5)
     T     T     T      T                             T
     F     F     F      F                             F这个很容易,就不解释了。

 

    odified Condition/Decision Coverage:

    基本思路:

    表达式可以理解为(a<2 && b>3) &line;&line; (c<4 && d>5);

    将表达式的理解为两个组合条件A or B形成的表达式,其中A为(a<2 && b>3),B为(c<4 && d>5);
 
    对这个表达式,当A为F时,B是独立变量;当B为F时,A是独立变量;

    则第一步的分析可以围绕A、B进行:
       条件                                      结果
    (A)       (B)                                A or B
    F         T                                    T
    T         F                                    F
    T         F                                    F
    F         F                                    F

    其中最后一组取值重复,最终根据这三种取值进一步分析。

    5.  第二步的分析,考虑A表达式,A为(a<2 && b>3),当a<2取值为T时,b>3为独立变量;b>3取值为T时,a<2为独立变量;因此,A条件取值为F的MC/DC用例为:

      
          条件 
                                               结果
     (a<2)       (b>3)                           (A)
     T           F                                F
     F           T                                F

  A条件取值为T的用例为T,T;

  6.  第三步的考虑,分析B表达式,B为(c<4 && d>5),同对A的分析,B为T的用例为T,T;B为F的用例为T,F和F,T;

  7.    综合4、5、6的分析,最终得出结果:

         条件                                      结果
    a<2   b>3   c<4    d>5                  (a<2 && b>3 &line;&line; (c<4 && d>5)
     T     F     T      T                             T
     F     T     T      T                             T
     T     F     T      F                             F
     F     T     T      F                             F
     T     F     T      F                             F
     F     T     F      T                             F
     T     T     T      F                             T
     T     T     F      T                             T

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值