1. 程式人生 > >單元測試入門+junit4介紹+簡單小例項

單元測試入門+junit4介紹+簡單小例項

一.什麼是單元測試

通俗的講,比如我寫了一個類,我這個類是要給別人用的,在別人用之前我要測試這個類是否有bug。這中測試就是單元測試。

二.為什麼要進行單元測試

(一)在團隊開發專案的過程中,我寫了一個類庫,而這個類庫要和別人寫的類結合使用,那麼當別人呼叫你類庫中的方法後程序結果出錯了,那麼到底是誰的錯誤就不好區分了,因此,在別人呼叫你的類庫時,你要先保證你的類庫時沒有問題的。因此對你的類庫進行測試嘍!

(二)在專案開發的過程中,專案的問題發現的越晚,那麼所造成的經濟損失也就越大,因此在專案維護的過程中的花費是最大的,具有關調查發現,在一個軟體專案中,後期維護和升級所佔的成本費用可以佔到整個專案成本的60%

左右。因此能越早發現問題,或者越早把程式寫的越健壯越好,這也就要用到了單元測試。當然,對於一些形象工程來說,單元測試就顯的不那麼重要了。

三.junit簡介

Junit是一個開源的Java單元測試框架,它由Kent BeckErich Gamma建立,JUnit4框架中運用了Java5的Annotation介面簡化測試用例的編寫。

四.junit4中helloworld級別的小例項

(一)在myeclipse中建立一個Java project(JUnit4),在這個project建立一個package(zj.junit4),在package中建立一個開發的類(T.java).在T.java中寫好類的方法,此處的方法如圖。注意:讀者先不要管圖中的JUnit 4

Referenced Libraries這兩個檔案。

(二)在project中建立另一個package(zj.junit4.test),在這個package中建立測試類(TTest.java)。可以在package中點選滑鼠右鍵,建立JUnit Test Case.此處類的名字為TTest。注意:而且這裡選擇junit4.


(三)點選Class under test中的Browse按鈕,選擇要測試的類,此處為對T這個類進行測試。


(四)選中這個類之後點選OK,回到上一層對話方塊,點選next,然後彈出的對話方塊中還可以選擇對這個類中的哪個方法進行測試。此處選擇add()方法,點選Finish.


(五)此時會彈出以下對話方塊,但是myeclipse自身帶了junitjar包,如果你不想用最新版的jar,可以直接用myeclipse中的jar包。


(六)myeclipse會自動生成testAdd()方法


(七)在testAdd()方法中寫如下的測試程式碼,然後點選右鍵的Run As中的JUnit Test,出現如圖的綠框,測試成功!注意:Failure是指測試失敗,Error是指測試程式本身出錯


總結:在junit測試領域有一句話,叫做”keeps the bar green to keeps the code clean”。至於意思大家應該都懂吧。這裡就不解釋了。還有一點就是,我們最好不要用就的assert,而用assertthat更合適,因為assertthatassert更自然,但是使用assertthat必須要下載hamcrest包,這兩個包就請大家到網上下載吧!