一. JUnit測試小結
1.單元測試的編寫原則
三個總體目標:第一個是簡化測試的編寫,這種簡化包括測試框架的學習和實際測試單元的編寫;第二個是使測試單元保持持久性;第三個則是可以利用既有的測試來編寫相關的測試。
2. 如何確定單元測試
一個單元測試基本是以一個對象的明確特性為基礎,單元測試的過程應該限定在一個明確的線程范圍內。
為了確定一個系統最終的行為符合我們起始的要求,我們首先需要保證系統內的各個部分的狀態會符合我們的設計要求,所以我們的測試單元的重點應該放在確定對象的狀態變換上。
應該在有可能引入錯誤的地方引入測試單元,通常這些地方存在于有特定邊界條件、復雜算法以及需求變動比較頻繁的代碼邏輯中。除了這些特性需要被編寫成獨立的測試單元外,還有一些邊界條件比較復雜的對象方法也應該被編寫成獨立的測試單元,這部分單元測試已經在Junit文檔中被較好的描述和解釋過了。
3. 如何編寫單元測試
二. junit中的assert方法全部放在Assert類中,總結一下junit類中assert方法的分類。
1.assertTrue/False([String message,]boolean condition);
判斷一個條件是true還是false。用途最廣。
2.fail([String message,]);
失敗,可以有消息,也可以沒有消息。
3.assertEquals([String message,]Object expected,Object actual);
判斷是否相等,可以指定輸出錯誤信息。
第一個參數是期望值,第二個參數是實際的值。
這個方法對各個變量有多種實現。在JDK1.5中基本一樣。
4.assertNotNull/Null([String message,]Object obj);
判讀一個對象是否非空(非空)。
5.assertSame/NotSame([String message,]Object expected,Object actual);
判斷兩個對象是否指向同一個對象。看內存地址。
6.failNotSame/failNotEquals(String message, Object expected, Object actual)
當不指向同一個內存地址或者不相等的時候,輸出錯誤信息。
注意信息是必須的,而且這個輸出是格式化過的。