zoukankan      html  css  js  c++  java
  • 实验三 白盒测试

    实验目的

    (1) 学习白盒测试方法

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

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

    实验内容

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

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

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

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

    import java.util.Scanner;

    public class Common{

    //求最大公约数

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

    //辗转相除是用大的除以小的。如果n<m,第一次相当n与m值交换

    while(n%m!=0){

    int temp=n%m;

    n=m;

    m=temp;

    }

    return m;

    }

    public static void main(String[] args){

    Scanner sc=new Scanner(System.in);

    System.out.println("请输入第一个数:");

    int n=sc.nextInt();

    System.out.println("请输入第二个数:");

    int m=sc.nextInt();

    System.out.println("最大公约数为:"+commonDivisor(n,m));

    }

    }

     

    弄错后

     

    2、 逻辑覆盖的应用

    l 按照所给的程序流程图,写出Java代码(用类和方法实现)

    l 写出语句覆盖、分支覆盖的测试用例,以及它所覆盖的路径,用JUnit编写测试用例进行测试

     

    import java.util.Scanner;

    public class Test1 {

    /**

     * @param args

     */

    public  void test() {

    Scanner sc=new Scanner(System.in);

    System.out.println("请输入x的值:");

    int  x=sc.nextInt();

    System.out.println("请输入y的值:");

     int y=sc.nextInt();

    if(x<4 || y>0){

    if(y>1){

    y=y+x;

    }

    else{}

    }

    else{

    if(x>=5){

    x=x-y;

    }

    else{

    x=x+y;

    }

    }

    System.out.println("x="+x);

    System.out.println("y="+y);

    }

    }

     

     

    测试类

     

    import static org.junit.Assert.*;

     

    import org.junit.Test;

     

     

    public class Test1Test {

     

     Test1 test1 =new Test1();

    @Test

    public void test() {

     

      test1.test();

       

    }

     

     

    }

     

     

     

     

     

    语句覆盖:

    X=4,y=0  路径:aeg

    X=5,y=0  路径:aef

    X=4,y=2  路径:abc

    分支覆盖:

    X=4,y=0  路径:aeg

    X=5,y=0  路径:aef

    X=4,y=2  路径:abc

    X=3,y=1  路径:abd

  • 相关阅读:
    字符,字节和编码
    Linux网络参数和ifconfig
    默认网关 网关 子网掩码 广播地址
    S.M.A.R.T.记录几块ssd硬盘
    linux 别名
    echo 输出颜色
    Linux:echo命令详解
    centos下安装mongodb 通过shell脚本
    linux查看登录用户
    linux wget指定下载目录和重命名
  • 原文地址:https://www.cnblogs.com/hellohhx/p/5517454.html
Copyright © 2011-2022 走看看