?我的隊友是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");}}
運行結果
測試開始:
測試運算符
測試全部
可以測試出程序基本無錯誤,有更深的錯誤會在后面在一次更新~~~
因為單元測試這邊沒什么把握,先從簡單開始,還不敢用自己的程序來測試,終有一天會用到我自己的程序進行測試