JUnit是一個回歸測試框架(regression testing framework)。Junit測試是程序員測試,即所謂白盒測試,因為程序員知道被測試的
軟件如何(How)完成功能和完成什么樣(What)的功能。Junit是一套框架,繼承TestCase類,就可以用Junit進行自動測試了。
雖然大多情況下他是程序員的活,但作為測試人員還是有必要了解一下,畢竟也是測試工作,提高自己人技術,擴展思想是主要,邊學邊做筆記,這樣學過的東西才不會忘記,嘻嘻~!
========學習環境=================
java編輯器: Eclipse SDK 3.5.6
junit測試包:Eclipse中自帶了junit 4 測試包
=================================
1.我們打開eclipse 創建一個工程名字為:Junit4,
創建一個包,命名為:com.junit4.cc ,
包下面創建一個類 T
代碼如下:
package com.junit4.cc;
publicclass T {
publicint add(int x ,int y){
return x+y;
}
}
我們如何來做測試,當然了,上面的代碼一眼就可以看出結果,需要測試么,我們這里只是想說明問題,如果我們不用測試框架,我們會用寫一個main方法對上面的代碼進行驗證。全部代碼如下。
package com.junit4.cc;
publicclass T {
publicint add(int x ,int y){
return x+y;
}
publicstaticvoid main(String args[]){
int z=new T().add(3,5); //向T類傳遞兩個參數3和5
System.out.println(z); //打印z進行查看3和5是否做了加法運算
}
}
云行上面的代碼,通過查看結果來判斷add方法是否正確。
---------------------------------------------------------------------------
上面的單元測試有很多弊端:
@ 需要花費很多的時間來寫測試代碼
@ 測試代碼不可重用,一段測試代碼對應一段被測代碼。被測代碼變,測試代碼就沒用了
@ 無法同時運行多個測試代碼。假如有一百個被測試代碼,要一個一個的運行測試代碼,用肉眼觀察結果,效率低還容易出錯。
這是我簡單總結的幾個缺點。
---------------------------------------------------------------------------
2. 那么我們就要使用單元測試框架來提交效率。
下面我們就使用eclipse來創建一個測試。還是測試上面的代碼為例子。
為了查看更加清晰,我們一般將測試代碼與被測試的代碼放在不同的包下面。
我們在Junit工程下面重新創建一個包,命名為:com.junit4.cc.test
----------------------------
創建一個測試類:TTest
注意:這里要創建的是一個測試類:在com.junit4.cc.test包上面右鍵點擊-->new-->Junit test Case

點擊“Next”會讓你選擇要測試的方法,選擇后點擊“Finish”則完成創建。
創建完成如下圖:

TTest.java代碼如下:
package com.junit4.cc.test;
importstatic org.junit.Assert.*;
import org.junit.Test;
import com.junit4.cc.*;
publicclass TTest {
@Test
publicvoid testAdd() {
int z=new T().add(5,3);
assertEquals(8,z);
}
}
3. 如果我們想要真正運行TTest.java這個測試類,還要對這個工程引入junit測試包。
右鍵點擊工程(junit4)--->Properties

點擊“next ” 按鈕,celipse提供junit3和junit4兩個測試包,我們選擇junit4 點擊“finish”就將測試包引入。
4. 下面來運行我們TTest.java測試代碼。

看到我們左側的綠色滾動條,說明我們的被代碼是沒有問題。
你可以試著修改下面代碼的參數:
int z=new T().add(5,3);
assertEquals(8,z); //將5、3、8等數字任意修改,查看綠色滾動條的顏色,給出的提示是什么?