白盒测试过程中、6种覆盖方法覆盖强度由弱到强的顺序依次是:
语句覆盖
判定逻辑覆盖
条件逻辑覆盖
判定逻辑条件覆盖
条件组合覆盖
路径覆盖
例:
if(a&&b)
{
c=a+b;
}
else
{
c=a-b;
}
1.语句覆盖:
语句覆盖就是每个语句至少被执行一次。
2.判定条件覆盖
每个判断的分支取真分支和取假分支至少经历一次
只需要a为真b为真或是a/b中有一个为真,一个为假即可这两种情况。
3.条件逻辑覆盖
使得判定的每个条件都需要至少满足一次。
比如上面:a如false和true。b取false和true两种情况。
4.判断逻辑条件覆盖
使得每个判断取到可能的结果,并且判断中的每个条件也要取到可能的结果。判断和条件都必须满足。
即if/else两个判断都要执行到,if中的条件a取false和true,b取false和b取true。
5.条件组合判断
即每个判定中条件的各种取值组合至少出现一次。
比如上面的if为真的条件中:
a为真,b为真 一组
a为真,b为假 二组
a为假,b为真 三组
a为假,b为假 四组kaolv
6.路径覆盖
执行所有可能执行的路径。
总结:
路径覆盖肯定包含判定覆盖,与条件没有直接关系。
判定套件覆盖一定包含判定覆盖和条件覆盖。
条件判定并不等同于判定覆盖。一个关注条件的真假,一个关注判定的分支。
网友评论