我的队友是52吴舒婷,博客内容主要是白盒黑盒的测试数据分析
我们通过简单的四则运算来进行程序的测试与封装
我们主要完成的是事情
(1)封装:将运算要运用的方法进行封装
文件主要有三个:Calculate(存放运算要用得到方法)、CalcuTest(主要main方法)、Test(测试)
Calculate中主要的方法:Cal()运算、input()输入、judge判断()
代码如下:CalcuTest(主要main方法)
package Test.src.src;import java.util.Scanner;public class CalcuTest {static Scanner sc = new Scanner(System.in);static int a=0;static int b=0;static String cc=new String();public static void main(String[] args) {Calculate c1=new Calculate();c1.input();a=c1.a1;b=c1.b1;cc=c1.cc1;int total=c1.Cal(a,b,cc);System.out.println("计算结果是:"+total); }}
Calculate(存放运算要用得到方法)
package Test.src.src;import java.util.Scanner;public class Calculate {static Scanner sc = new Scanner(System.in);int a1=0;int b1=0;String cc1=new String();static public int Cal(int a,int b,String cc){cc=judge(cc);int result=0;if(cc.equals("+"))result=a+b;else if(cc.equals("-"))result=a-b;else if(cc.equals("*"))result=a*b;else if(cc.equals("/"))try{result=a/b;}catch(Exception e)//对输入的数值进行异常处理 {System.out.println("\t 除数不能为0");}else System.out.println("\t请输入正确运算符!请重新执行");return result;}public void input(){try{System.out.println("运算符是 +,-,*,/"); System.out.println("请输入第一个数:");a1=sc.nextInt();System.out.println("请输入第二个数:");b1=sc.nextInt();System.out.println("请输入运算符:");cc1 = sc.next();}catch(Exception e){System.out.println("输入数值出现异常");}}static public String judge(String cc2){boolean a=false;if(cc2.equals("+") || cc2.equals("-")|| cc2.equals("*")||cc2.equals("/"))a=true;while(a==false){System.out.println("\t非法运算符");System.out.println("请输入运算符:");cc2 = sc.next();if(cc2.equals("+") || cc2.equals("-")|| cc2.equals("*")||cc2.equals("/"))a=true;}return cc2;}}
(2)测试
A、进行四个运算的基本测试
B、进行除法除数不能为0的测试
C、对数的数值规范进行测试
D、对输入的运算符是否正确的测试
package Test.src.src;import static org.junit.Assert.*;import org.junit.Test;public class Tests {@Testpublic void testAdd()//测试加法基本功能 {int result=new Calculate().Cal(3,3,"+");assertEquals(6,result);}@Testpublic void testSub()//测试减法基本功能 {int result=new Calculate().Cal(6,3,"-");assertEquals(3,result);}@Testpublic void testMuti()//测试乘法基本功能 {int result=new Calculate().Cal(3,3,"*");assertEquals(9,result);}@Testpublic void testDivi()//测试除法基本功能 {int result=new Calculate().Cal(3,3,"/");assertEquals(1,result);}@Testpublic void testDiviZero()//测试除法出书不为零基本功能 {Calculate c1=new Calculate();c1.Cal(3, 0,"/");}@Testpublic void testIlligal()// {Calculate c1=new Calculate();c1.input();}@Testpublic void testcalStr()// {Calculate c1=new Calculate();c1.Cal(3,5,"k");}}
运行结果
测试开始:
测试运算符
测试全部
可以测试出程序基本无错误,有更深的错误会在后面在一次更新~~~
因为单元测试这边没什么把握,先从简单开始,还不敢用自己的程序来测试,终有一天会用到我自己的程序进行测试