逻辑驱动覆盖测试

2025-10-22 18:35:43

1、逻辑驱动覆盖测试分为六种,如图所示

逻辑驱动覆盖测试

1、Public void foo(int a, int b, int x) {

         if (A > 1 && B = = 0 ) {

                   X = X/A ;

          }

          if (A = = 2 || X > 1 ) {

                    X = X + 1;

          }

}

图中存在4条路径

L1:s->a-> c -> b ->e->d   

L2:s -> a -> b-> d                

L3:   s -> a -> b-> e->d         

L4:   s-> a -> c -> b -> d

逻辑驱动覆盖测试

2、语句覆盖:

语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。

语句覆盖率也被称为行为覆盖率、段覆盖率或基本块覆盖率。

语句覆盖率 = 至少被执行一次的语句数量/可执行的语句总数

逻辑驱动覆盖测试

3、判定覆盖:

设计若干个测试用例,运行被测程序,使得程序中每个判断的真、假分支至少执行一次。判定覆盖又称为分支覆盖。

以上面的程序为例,如果设计两组测试用例,使它们能通过路径L1和L2, 或通过路径L3和L4,即可达到判定覆盖标准。

判定覆盖率 = 判定结果被评价的次数 / 判定结果结果的总数

逻辑驱动覆盖测试

4、条件覆盖:

设计若干个测试用例,运行被测程序,使得程序中每个判断的每个条件的真假取值至少执行一次。

条件覆盖率 = 条件操作数值至少被求值一次的数量 / 条件操作数值的总数

逻辑驱动覆盖测试

5、判定-条件覆盖:

判定-条件覆盖就是设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,同时每个判定的所有可能取值至少执行一次。

逻辑驱动覆盖测试

6、条件组合覆盖就是设计足够的测试用例,运行被测程序,使得每个判断的所有可能的条件取值组合至少执行一次。

逻辑驱动覆盖测试

7、路径覆盖:

路径覆盖就是设计足够的测试用例,覆盖程序中所有可能的路径。

路径覆盖率 =至少被执行到一次的路径数/总的路径数

逻辑驱动覆盖测试

1、上述6种测试方法,每一种方法都有优缺点和局限性。

从实际应用来看,语句覆盖、判定覆盖和路径覆盖应用最多,往往对测试人员设计的测试用例有如下要求:

语句覆盖率100%

判定覆盖率85%以上

路径覆盖率80%以上

   至于其他覆盖测试则用得不多。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢