语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、路径覆盖

白盒测试是结构测试,主要对代码的逻辑进行验证。
逻辑覆盖率:语句覆盖<条件覆盖<判定覆盖<条件-判定覆盖<组合覆盖<路径覆盖

例子

语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、路径覆盖_第1张图片

一、语句覆盖

 
最基础的覆盖,只要每一个执行处理框内的语句都能执行就可,不用关注判断逻辑。
如题:其路径为1-2-4-5.
所以,其测试用例设计为:TT

例如:a=1,b=1,c=2


二、判断覆盖


判断覆盖一定包含语句覆盖,反之不然。判断覆盖需要每一个判断框取真和取假至少一次,重点需要关注判断框即可。
如题:其路径为1-2-6 + 3-4-5
所以,其测试用例设计为:TF+FT或者TT+FF

例如:a=1,b=1,c=1 和 a=0,b=0,c=2


三、条件覆盖


由于判断覆盖不能保证判断框内的&&和||类型条件的真假处理,而条件覆盖则是关注判断框内条件的真假执行情况,每一个条件的取值必须至少包含一真一假。重点关注判断框内的条件真假取值情况。
如题:其路径为1-2-6 或 3-4-5
所以,其测试用例设计为:

a >0 Ta
a <0 Fa
b >0 Tb
b <0 Fb
a >1 Taa
a <1 Faa
c =2 Tc
c !=2 Fc

TaTbTaaTc 和FaFbFaaFc 或者 TaFbTaaFc 和 FaTbFaaTc

例如:a=2,b=-1,c=1 和 a=-1,b=1,c=2


四、条件-判断覆盖


条件判断覆盖即要同时满足条件覆盖和判断覆盖。需要结合条件判断的表和图中的判断框进行判断。
如题:
所以,其测试用例设计为:TaTbTaaTc 和FaFbFaaFc 或者 TaTbFaaFc 和FaFbTaaTc

例如:a2=,b=1,c=2 和 a=-1,b=-1,c=1


五、路径覆盖


每一条路径都要执行一遍,关注的是起止点之间的路径。
如题:1-2-6 1-2-4-5 3-4-5 3-6

你可能感兴趣的:(软件工程,软件工程,单元测试)