JUnit是一個Java編程語言編寫的單元測試框架。 而且是一個家族的統稱爲xUnit單元測試框架中的一個。編程
JUnit是Java中最有名的單元測試框架。然而,它僅適合於純粹的單元測試,對於集成測試應該使用TestNG來代替。框架
Junit3和Junit4的區別 eclipse
- Junit3中全部方法都必須在方法前面必須使用Test做爲前綴
- JUnit3必須繼承TestCase這個父類 JUnit4則沒有限制
快速建立一個類的測試類編程語言
- 在eclipse中在要測試的類上邊單擊右鍵new->other->JUnit Test Case 修改Source folder 到test目錄
測試類的基本注意事項單元測試
- 測試方法上必須使用@Test進行修飾
- 測試方法必須使用public void 進行修飾,不能帶任何的參數
- 測試類的包結構應該和被測試類保持一致
- 測試單元中的每一個方法必須能夠獨立測試,測試方法間不能有任何的依賴
- 測試類使用Test做爲類名的後綴(不是必須)
- 測試方法使用test做爲方法名的前綴(不是必須)
測試失敗的兩種狀況 測試
- 測試用例不是用來證實你(的邏輯)是對的,而是用來證實你(的斷言)沒有錯
- .Failure 通常由單元測試使用的方法判斷失敗所引發的,這表示測試點發現了問題,就是說問題輸出的結果和咱們預期的不同。
- error是有代碼異常引發的,它能夠產生於測試代碼自己的錯誤,也能夠是測試代碼中一個隱藏的bug
JUnit經常使用的註解 ui
- @Test(timeout 毫秒值和expected預期會拋出一個異常兩個屬): 將一個 普通的方法修飾成爲一個測試方法
- @BeforeClass: 他會在全部的方法運行前被執行,static修飾
- @AfterClass 他會在全部方法運行結束後被執行,static修飾
- @Before:會在每個測試方法被運行前執行一次
- @After 會在每一個測試方法被運行後執行一次
- @Ignore 所修飾的測試方法會被測試運行器忽略
- @RunWith(Suite.class測試套件組織測試類一塊兒運行): 能夠修改測試運行器 org.junit.runner.Runner
- @Suite.SuiteClasses({TaskTest1.class,TaskTest2.class,TaskTest3.class})測試套件