逻辑测试

逻辑测试覆盖是白盒测试法常用的技术。主要的覆盖标准有6种
强度由弱到强依次是:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖

1. 条件覆盖CC(Condition Coverage)

设计足够多的测试用例,运行被测程序,使得每一判定语句中每个逻辑条件的可能取值至少满足一次。条件覆盖率的公式:条件覆盖率=被评价到的条件取值的数量/条件取值的总数X100%[1] 条件覆盖的缺点:只考虑到每个判定语句中的每个表达式,没有考虑到各个条件分支(或者涉及不到全部分支),即不能够满足判定覆盖.

2. 条件组合覆盖,也称多条件覆盖MCC (Multiple Condition Coverage)

设计足够多的测试用例,使得每个判定中条件的各种可能组合都至少出现一次(以数轴形式划分区域,提取交集,建立最少的测试用例)。这种方法包含了“分支覆盖”和“条件覆盖”的各种要求。满足条件组合覆盖一定满足判定覆盖、条件覆盖、判定条件覆盖。条件组合覆盖率的公式:条件组合覆盖率=被评价到的条件取值组合的数量/条件取值组合的总数条件组合覆盖的缺点:判定语句较多时,条件组合值比较多。

3. 语句覆盖 SC(Statement Coverage)

就是设计若干个测试用例,运行被测程序,使得程序中每一可执行语句至少执行一次。这里的“若干个”,意味着使用测试用例越少越好。语句覆盖在测试中主要发现缺陷或错误语句。

4. 判定条件覆盖CDC(Condition/ Decision Coverage)

设计足够多的测试用例,使得判定中的每个条件的所有可能(真/假)至少出现一次,并且每个判定本身的判定结果也至少出现一次。[1] 判定条件覆盖率的公式:条件判定覆盖率=被评价到的条件取值和判定分支的数量/(条件取值总数+判定分支总数).判定条件覆盖的缺点:没有考虑单个判定对整体结果的影响,无法发现逻辑错误。 

猜你喜欢

转载自blog.csdn.net/hyqsong/article/details/52151701