zoukankan      html  css  js  c++  java
  • 软件测试 第三次作业

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

    请用类和方法(写一个求最大公约数的方法)实现,命名时请按照规范命名。在main方式中获取用户输入的两个整数,调用之前写的方法,输出它们的最大公约数。利用FindBugs查找程序中是否存在bug。

    Demo类

    package cn.wu.test;

     

    public class Demo {

     

        /**

         * @param args

         */

        public static void main(String[] args) {

           // TODO Auto-generated measure stub

               measure s =new measure();

               s.index();

        }

     

    }

    Method

    package cn.wu.test;

     

    public class measure {

        public void index(){

        int a=48,b=90;

        int min =Math.min(a, b);

        for(int k=min;k>0;k--){

           if(a%k==0 && b%k==0){

           System.out.println(a+"和"+b+"的最大公约数为:"+k);

           return;

        }

    }

    }

    }

    2、 逻辑覆盖的应用

      按照所给的程序流程图,写出Java代码(用类和方法实现)写出语句覆盖、分支覆盖的测试用例,以及它所覆盖的路径,用JUnit编写测试用例进行测试.

    l  测试用例(语句覆盖):

    x

    y

    结果

    路径

    3

    2

    Y+1=3 x=3

    abd

    3

    1

    不变

    abc

    6

    -1

    x-y=7

    aeg

    4

    -1

    X+y=3

    aef

    l  测试用例(分支覆盖):

    X<4 or y>0

    x>5

    Y>1

    用例

    结果

    路径

    T

    F

    X=3,y=1

    不变

    abc

    T

    T

    X=3,y=2

    Y+1=3 x=3

    adb

    F

    F

    X=6,y=-1

    x-y=7

    aeg

    F

    T

    X=4,y=-1

    X+y=3

    aef

    package cn.wu.test;

    public class measure {

           public void tests(){

               int x = 5,y = 6;

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

                  if(y>1){

                      y=y+1;

                      System.out.println("x结果是:"+x);

                      System.out.println("y+1结果是:"+y);

                  }

                  else{

                      System.out.println("x结果是:"+x);

                      System.out.println("y结果是:"+y);

                  }

               }

               else{

                  if(x>=5){

                      x=x-y;

                      System.out.println("x-y结果是:"+x);

                  }

                  else{

                      x=x+y;

                      System.out.println("x+y结果是:"+x);

                  }

               }

              

           }

    }

    package cn.wu.test;

     

    public class Demo {

     

        /**

         * @param args

         */

        public static void main(String[] args) {

           // TODO Auto-generated measure stub

               measure s =new measure();

               s.tests();

        }

     

    }

  • 相关阅读:
    bitcoin PoW原理及区块创建过程
    Hyperledger Fabric(v1.1.0)编译时遇到的问题
    Hyperledger Fabic中的Transaction流程
    mint linux 18.3 遇到“已安装的 post-installation 脚本 返回了错误号 127 ”问题的解决
    redis--解析字符串
    golang 统计uint64 数字二进制存储中1的数量
    c++ std 最小堆的使用 (用于实现top100之类的功能)
    Linux 信号signal处理函数
    Linux 信号signal处理机制
    LinuxMint 下 B站 番 blv 缓存 转 mp4
  • 原文地址:https://www.cnblogs.com/WJ-Mark/p/5385009.html
Copyright © 2011-2022 走看看