首先就是主要簡單的講一下Junit的使用,屬于傻瓜式速成教程,gogogogogogogo!
一:什麼是單元測試:
我們在編寫大型程式的時候,需要寫成千上萬個方法或函數,這些函數的功能可能很強大,但我們在程式中隻用到該函數的一小部分功能,并且經過調試可以确定,這一小部分功能是正确的。但是,我們同時應該確定每一個函數都完全正确,因為如果我們今後如果對程式進行擴充,用到了某個函數的其他功能,而這個功能有bug的話,那絕對是一件非常郁悶的事情。是以說,每編寫完一個函數之後,都應該對這個函數的方方面面進行測試,這樣的測試我們稱之為單元測試。傳統的程式設計方式,進行單元測試是一件很麻煩的事情,你要重新寫另外一個程式,在該程式中調用你需要測試的方法,并且仔細觀察運作結果,看看是否有錯。這樣的話太過于麻煩了,本文簡要介紹一下在Eclipse中使用JUnit4進行單元測試的方法。用更加通俗的話來描述單元測試就是:寫了個類,要給别人用,會不會有bug?怎麼辦?測試一下。用main方法測試好不好?這種方法我們經常用,就是寫一個方法實作一些功能,把方法的調用方式放在main函數中。這樣的測試方式一個是使得main函數太過于混亂,再者測試過程需要人的仔細觀察來辨識每個函數的功能實作,哪一個函數出錯了,哪一個函數沒有輸出之類的問題層出不窮,單元測試就是來解決這些問題的。下面我會就單元測試的每一步給出詳細的圖解和描述。
二:進行單元測試:
首先我先建立一個就是一個簡單的計算機類,裡面就寫一個加除的方法;
1 package junit;
2
3 public class Reckon {//一個計算類
4
5 //簡單的實作兩個計算方法
6 public int add(int num1,int num2){
7 return num1+num2;
8 }
9
10 public int divide(int num1,int num2){
11 return num1/num2;
12 }
13
14 public static void main(String[] args) {
15 //傳統的把方法的調用方式放在main函數中測試運作
16 int num=new Reckon().add(1, 2);
17 System.out.println(num);
18 }
19 }
下面進行單元測試:
右鍵建立:選擇junit Test Case

接着next,出現下面的畫面,用junit4,在下面選擇要測試的類,給這個測試類起一個名字。
點選next出現下面的畫面,這是選擇要測試的方法;
點選finish,添加jar包;
這一步提示我們是否将我們需要的JUnit 4的相關包加入到我們項目的ClassPath路徑下,點選OK就行,因為Eclipse中包含JUnit的jar包。
做完上面的會自動生成這樣一個測試類;
1 package junit;
2
3 import static org.junit.Assert.*;
4
5 import org.junit.Test;
6
7 public class Reckon_Test {
8
9 @Test
10 public void testAdd() {
11 fail("Not yet implemented");
12 }
13
14 @Test
15 public void testDivide() {
16 fail("Not yet implemented");
17 }
18
19 }
Test注解表示這是個測試方法;
修改裡面的方法:
1 package junit;
2
3 import static org.junit.Assert.*;
4
5 import org.junit.Test;
6
7 public class Reckon_Test {
8
9 @Test
10 public void testAdd() {
11 int z=new Reckon().add(2, 8);
12 assertEquals(10,z);//判斷得到的z是不是10也就是正确的答案
13 }
14
15 @Test
16 public void testDivide() {
17 int z=new Reckon().divide(8, 2);
18 System.out.println(z);
19 }
20
21 }
右鍵選擇Junit Test 運作
綠色代表測試成功,其中Error:程式出錯 Failures:測試失敗
如果我們把除數修改為零,則會出現數學異常
常用的方法:
歡迎大家一起說出自己的想法。