白盒测试中的几种逻辑覆盖

白盒测试又称为结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。就是在知道软件代码,和内部逻辑结构后进行的一项测试。主要目的是检查内部结构,逻辑。方法是检查每一条路径。与黑盒测试相比,黑盒测试更偏向用户,白盒测试更偏向于开发者。黑盒测试只需要输入和结果。而白盒测试更需要测试,软件内部是如何运行的。

今天我想说一说,白盒测试中的几种逻辑覆盖

白盒测试,为了保证测试的完整性,就要测试软件内部的每一条路径。逻辑覆盖方法能帮助我们设计测试用例,以减少不必要的消耗:

逻辑覆盖包括语句覆盖判定覆盖条件覆盖判定/条件覆盖条件组合覆盖路径覆盖。六种覆盖标准发现错误的能力呈由弱到强的变化:

1.语句覆盖每条语句至少执行一次。
2.判定覆盖每个判定的每个分支至少执行一次。
3.条件覆盖每个判定的每个条件应取到各种可能的值。
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
6.路径覆盖使程序中每一条可能的路径至少执行一次。
 
以下我举个例子
对于一个这样逻辑的程序它的代码大致如下
...
if(y>1&&z=0)
    x=x/y;
if(y=2||x>1)
    x=x+1;
...
1.语句覆盖每条语句至少执行一次。
  我们只需是每条语句执行一次即可 x=4,y=2,z=0
2.判定覆盖每个判定的每个分支至少执行一次。
  我们只需是每个分支执行一次即可
  假设第一个用例在两个判断都为真,第二个用例都为假
  x=4,y=2,z=0;x=1,y=1z=1
3.条件覆盖每个判定的每个条件应取到各种可能的值。
  只需让每个调剂出现一次,条件为y>1,z=0,y=2,x>1
  用例一让所有条件为真x=4,y=2,z=0;用例二是所有条件为假x=1,y=1z=1
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
  x=4,y=2,z=0;x=1,y=1z=1
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
  可能组合为 真真,真假,假真,假假
  用例一x=4,y=2,z=0;用例二x=1,y=2,z=1;三(2,1,0);四(1,1,1)
6.路径覆盖使程序中每一条可能的路径至少执行一次。
  即两个判断组合为真真,真假,假真,假假
  一(4,2,0)二(1,1,0)三(4,2,1)四(1,1,1)
以上
posted on 2015-04-12 11:03  张书豪  阅读(11546)  评论(0编辑  收藏  举报