• 作业五 关于封装与测试 拿我小学生四则运算为例


    我的封装:

     1 class yy
     2 {
     3     private int max=4;
     4     private int min=1;
     5     private double w2,m2;
     6     private String ff;
     7     Random random = new Random();
     8 
     9     //System.out.println(s); 
    10     public yy()
    11     {
    12     int s = random.nextInt(max)%(max-min+1) + min;
    13 
    14     double x=random.nextInt(max-2)%(max-2-min+1) + min;
    17     double y=random.nextInt(max-1)%(max-1-min+1) + min;
    18     int y1up=(int) Math.pow(10,x);
    19     int y1dn=(int) Math.pow(10,x-1);
    20     int y2up=(int) Math.pow(10,y);
    21     int y2dn=(int) Math.pow(10,y-1);
    22     int x_y1=random.nextInt(y1up)%(y1up-y1dn+1) + y1dn;
    23     int x_y2=random.nextInt(y2up)%(y2up-y2dn+1) + y2dn;
    24     double w=(double)x_y1;
    25     double m=(double)x_y2;
    26     this.w2=w;
    27     this.m2=m;
    28     switch(s)
    29     {
    30     case 1:
    31     {
    32     this.ff="+"; 
    33     System.out.println(w+"+"+m+"=" );
    34     break;
    35     }
    36     case 2:
    37     {
    38     this.ff="-";
    39     System.out.println(w+"-"+m+"=" );
    40     break;
    41     }
    42     case 3:
    43     {
    44     this.ff="*";
    45     System.out.println(w+"*"+m+"=" );
    46     break;
    47     }
    48     case 4:
    49     {
    50     this.ff="/";
    51     System.out.println(w+"/"+m+"=" );
    52     break;
    53     }
    54 
    55     }
    56     }
    57     public double ret1()
    58     {
    59         return w2;
    60     }
    61     public double ret2()
    62     {
    63         return m2;
    64     }
    65     public String ret3()
    66     {
    67         return ff;
    68     }
    69 }
    这里的封装是用来 弄出 四则运算的 第一个数字,运算符号,第二个数字
    本来想把答案和判断对错等也封装到里面的但因为面板要记录输入输出的关系就没拿进来,就在主类上用构造方法解决。

    下面来测试
    白盒法:
    测试数据 1.填正确数字
         2.填错误数字
         3.填字母
    情况如下

    结果表明我的程序对输入非数字有漏洞 要补

    黑盒法:

    对程序结构算术检测

    测试数据 将第一个数设为6 第二个设为3 采用加减乘除

    
    
    检测答案

  • 相关阅读:
    HDU 1081 To The Max (DP) 扩展最大子列和,求最大子矩阵和
    How to Log SOAP Message Content in Metro?(官方解答)
    纪晓岚与和珅对调后的工作困难
    蒙版
    2011年选拔赛C本科
    网络常用语
    linux怎么用一个命令行统计出给定目录中有多少个子目录
    REGSVR32
    香水
    判断一个数是否是2的平方
  • 原文地址:https://www.cnblogs.com/vip-fan1234xiang/p/4469658.html
Copyright © 2020-2023  润新知