Junit單元測試

Junit單元測試

1.使用Junit的最佳實踐:

a) 新建一個名爲testsource folder,用於存放測試類源代碼

b) 末表類與測試類應該位於同一個包下面,這樣測試類中就不必要導入源代碼所在的包,因爲他們位於同一個包下面

c) 測試類的命名規則:假如目標類是Calculator,那麼測試類應該命名爲TestCalculatorCalculator,雖然不是必須的,但是要符合規範。

2.Junit的口號:keep the bar green to keep the code clean

3.No reflection ,no most frameworks.

4.Junit:單元測試並不是證明你是對的,而是證明你沒有錯。

5.測試用例(TestCase)是單元測試的一個很重要的方面

6.單元測試主要是用來判斷程序執行結果與自己預期的結果是否一致。

7.測試類必須要繼承與TestCase父類(junit3.8是顯式的繼承,junit4之後是用註解的方式了)

8.junit3.8中,測試方法需要滿足如下原則:

a) Public

b) Void

c) 無方法參數

d) 方法名字必須以test開頭

9.TestCase之間一點個要保持完全的獨立性,不允許出現任何的依賴關係

10.關於setUptearDown方法的執行順序

a) setUp

b) testXxx

c) tearDown

 

 

備註:分析Junit源碼切入點應該是TestCase類。Junit的源代碼非常好,使用了多種設計模式結合。

 

Junit 4單元測試

1.Junit 4全面引入了Annotation來執行我們編寫我們的測試

2.Junit 4 並不要求測試類繼承TestCase父類

3.在一個測試類中,所有被@Test註解所修飾的public void 方法都是test case,可以被Junit所執行

4.雖然Junit4並不要求測試方法以test開頭,但是我們最好還是遵循這個規則,見名知意。

5.Junit4中,通過@Before註解是信啊與Junit3.8setUp方法同樣的功能,通過@After註解實現與Junit3.8中的tearDown方法同樣的功能

6.Junit 4中可以使用@BeforeClass@AfterClass註解修飾一個public static void no-args的方法,這樣被@BeforeClass註解所修飾的方法會在所有測試方法之前執行,被@AfterClass註解所修飾的方法會在所有測試方法執行之後 執行。

7.@ignore註解可以用於修飾測試類與測試方法,當修飾測試類時,表示忽略掉類中的所有測試方法;當修飾測試方法時,表示忽略掉該測試方法。

8.Junit TestCase類中應用了模板方法模式:

public void runBare() throws Throwable{

setUp();

try{

runTest();

}

finally{

tearDown();

}

 

}

 

9.JunitTestCase類中應用了適配器(Adapter)模式:代碼同上,體現在runTest()方法中。

10.適配器模式(Adapter Pattern)主要分爲三種:

a) 基於類的繼承方式

b) 基於對象組合方法

c) 缺省的適配器模式(AWTSwing事件模型所採用的模式)

11.我們學習過的設計模式:

a) 單例模式(Singleton

b) 策略模式(Strategy

c) 代理模式(static proxydynamic proxy

d) 觀察者模式(Observer

e) 裝飾模式(Decorator

f) 工廠模式(static factoryfactory methodabstract factory

g) 模板方法模式(Template Method)只能使用抽象類來實現

h) 適配器模式(缺省適配器、基於繼承的適配器、基於組合的適配器)

i) 命令模式(Command

j) 組合模式(Composite

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發佈了104 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章