实验三 白盒测试

实验目的

 

(1) 学习白盒测试方法

(2) 掌握语句覆盖、条件覆盖、分支覆盖等逻辑覆盖方法

(3) 掌握Java代码分析工具的使用

 

实验内容

1、 计算整数X和整数Y的最大公约数。(不允许采用课堂上所用的方式实现)

l 请用类和方法实现(定义一个类,在类中定义一个求最大公约数的方法),命名时请按照规范命名。

l 在main方法中获取用户输入的两个整数,调用之前写的方法,输出它们的最大公约数。

import java.util.Scanner;

 

public class test {

public static int conut(int m,int n){

int p = m%n;

while (p >0){

m=n;

n=p;

p=m%n;

}

return n;

}

public static void main(String[] args){

int a,b,c,t;

System.out.print("请输入第1个数字");

Scanner Scan = new Scanner(System.in);

a = Scan.nextInt();

System.out.print("请输入第2个数字");

Scanner Scan2 = new Scanner(System.in);

b = Scan2.nextInt();

if(a<b){

t=a;

a=b;

b=t;

}

c=conut(a,b);

System.out.print("最大公约数为"+c);

 

}

}

 

 

l 利用FindBugs查找程序中是否存在bug。

 

 

 

 

1、 逻辑覆盖的应用

l 按照所给的程序流程图,分别写出语句覆盖、分支覆盖的测试用例,以及它所覆盖的路径

语句覆盖

测试用例 x=3 y=2   路径abc

测试用例 x=6 y=0   路径aef

测试用例 x=4 y=0   路径aeg

分支覆盖

测试用例 x=3 y=2   路径abc

测试用例 x=3 y=0   路径abd

测试用例 x=6 y=0   路径aef

测试用例 x=4 y=0   路径aeg

 

l 附加题:根据程序流程图,写出代码(定义一个类和方法来实现),用JUnit生成单元测试,并利用前面设计的测试用例进行测试。

posted @ 2016-04-15 12:53  均匀  阅读(413)  评论(0编辑  收藏  举报