整理白盒测试中的逻辑覆盖

举例


public class Coverage
{
public void Main()
{
1 System.out.println("start main function:path a...");
2 int A,B,X;
3 if(A>1 and B==0){
4 X=X/A;
5 System.out.println("path c");
5 } else {
6 System.out.println("path b");
7 }
8 if(A==2 or X>1){
9 X=X+1;
10 System.out.println("path e");
11 } else {
12 System.out.println("path d");
13 }
14 System.out.println("end main function.");
}
}[1] 








语句覆盖


语句覆盖 SC(Statement Coverage),就是设计若干个测试用例,运行被测程序,使得程序中每一可执行语句至少执行一次。这里的“若干个”,意味着使用测试用例越少越好。语句覆盖在


测试中主要发现缺陷或错误语句。[1] 
例如上边的Coverage类代码,从path a到path c再到path e的路径就是所有可执行的语句路径,所以选择path ace路径设计测试用例即可覆盖所有可执行语句。[1] 
语句覆盖率的公式:语句覆盖率=被评价到的语句数量/可执行的语句总数 x 100%[1] 
语句覆盖的缺点:对程序执行逻辑的覆盖很低。[1] 
判定覆盖(分支覆盖)
一、 实验目的 1. 通过实验掌握白盒测试中动态测试的主要方法之一:逻辑覆盖测试; 2. 掌握逻辑覆盖测试的5种主要类型:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和条件组合覆盖; 3. 理解上述5种逻辑覆盖测试的充分性和相互关系。 二、 实验原理 逻辑覆盖白盒测试中动态测试的主要方法之一,是以程序内部的逻辑结构为基础的测试技术,是通过对程序逻辑结构的遍历实现程序的覆盖,这种方法要求测试人员对程序的逻辑结构有清楚的了解。 依据覆盖源程序的详细程度,逻辑覆盖主要包括以下几类: 1.语句覆盖:设计若干测试用例,运行被测试程序,使得每一条可执行语句至少执行一次; 2.判断覆盖:设计若干测试用例,运行所测程序,使程序中每个判断的取真分支和取假分支至少执行一次; 3.条件覆盖:设计足够多的测试用例,运行所测程序,使程序中每个判断的每个条件的每个可能取值至少执行一次; 4.判断/条件覆盖:设计足够多的测试用例,运行所测程序,使程序中每个判断的每个条件的每个可能取值至少执行一次,并且每个可能的判断结果也至少执行一次; 5.条件组合覆盖:设计足够多的测试用例,运行所测程序,使程序中每个判断的所有可能的条件取值组合至少执行一次。 三、 主要软件工具 1.VC++6.0; 2.VISIO等绘图软件工具。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值