软件测试中的逻辑覆盖

本文详细介绍了软件测试中的逻辑覆盖方法,包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和条件组合覆盖,强调了不同覆盖标准在确保程序各部分执行上的差异和局限性,最终指出路径覆盖作为更为彻底的测试手段。
摘要由CSDN通过智能技术生成

1        语句覆盖  

 

“语句覆盖”是一个比较弱的测试标准,它的含义是:选择足够的测试用例,使得程序中每个语句至少都能被执行一次。                                                                                                                                   

6.4是一个被测试的程序,它的源程序是:

PROCEDURE                               M(VAR A,B,X:REAL);  

BEGIN                                                      

IF (A>1) AND (B=0)                            THENX:=X/A;                        

IF                         (A=2) OR (X>1)                           THENX:=X+1;       

END.                                                   

为使程序中每个语句至少执行一次,只需设计一个能通过路径ace的例子就可以了,例如选择输入数据为:                         

 A=2,B=0,X=3                                        

 就可达到“语句覆盖”标准。                                                                                                          

                            

从本例可看出,语句覆盖实际上是很弱的,如果第一个条件语句中的AND错误地编写成OR,上面的测试用例是不能发现这个错误的;又如第三个条件语句中X>1误写成X>0这个测试用例也不能暴露它,此外,沿着路径abd执行时,X的值应该保持不变,如果这一方面有错误,上述测试数据也不能发现它们。                                         

总之,一般认为“语句覆盖”是很不充分的一种标准。                    

2         判定覆盖

比“语句覆盖”稍强的覆盖标准是“判定覆盖”(或称分支覆盖)标准含义:执行足够的测试用例,使得程序中的每一个分支至少都通过一次。                           

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值