逻辑覆盖测试<br>将if(x>0 && y>0)和if(magic<0) 分别定义为P1、P2<br><br>将x>0、y>0、magic<0 分别定义为C1、C2、C3<br>
语句覆盖:程序中每个语句至少执行一次
测试数据:x=1;y=1;magic=-2<br>执行语句:1,3,4
测试数据:x=-1;y=-1;magic=1<br>执行语句:2,3,4
判断覆盖(分支覆盖):使得程序中的每个判断的”真“和”假“都至少被执行一次
测试数据:x=1;y=1;magic=-1<br>条件判断:P1真,P2真
测试数据:x=0;y=1;magic=1<br>条件判断:P1假;P2假
条件覆盖:使得判定中的每个条件至少有一次取真值,有一次取假值<br><font color="#ec7270">条件覆盖不能保证判定覆盖</font><br>
测试数据:x=1;y=-1;magic=-1<br>条件判断:C1真,C2假,C3真
测试数据:x=0;y=5;magic=1<br>条件判断:C1假,C2真,C3假
判定条件覆盖:既满足判断覆盖,也满足条件覆盖
测试数据:x=1;y1;magic=1<br>条件判断:C1真,C2真,C3假,P1真,P2假
测试数据:x=0;y=0;magic=-1<br>条件判断:C1假,C2假,C3真,P1假,P2真
条件组合覆盖:每个判定中条件结果的所有可能组合至少执行一次<br>条件组合覆盖能够满足语句覆盖、判定覆盖、条件覆盖、判定条件覆盖<br><br>但是条件组合覆盖不能保证所有路径被执行。<br>
基本路径测试
1.画出程序控制流图
2.计算环路复杂度
3.导出可执行路径:独立路径指和其他的独立路径相比,至少引入一个新处理语句或一个新判断的程序通路,它必须至少包含一条在本次定义路径之前不曾用过的边
4.设计测试用例