大名頂頂的JUnit是Kent Beck和Erich Gamma編寫的用java語言實現的單元測試框架。
JUnit3
JUnit3的用法比較簡單,就是實現繼承框架中TestCase的測試用例(一般實踐中命名為XxxTest),然后在其中加入以testXxx命名的測試方法。然后就可以用JUnit框架中的Runner運行測試。
而且在JUnit的測試中如果要加入初始化方法就把方法命名為setup(),如果要加入清理方法就把方法命名為downDown()。
如果要將幾個測試用例作為一個集合一次運行就實現一個有public static Test suite()方法簽名的方法,在其中創建一個TestSuite實例,然后調用方法addTest把一個個測試用例加入到集合中。
JUnit4
JUnit4在3的基礎上融入了JDK1.5的注釋特性,大大得改進和強化了JUnit框架。將測試方法由之前的通過繼承TestCase確定測試類和通過命名方法確定測試方法的測試編寫方式轉變為由注釋確定這些方面。
常用的注釋:
@Before:初始化方法
@After:清理資源
@Test:測試方法
@BeforeClass:針對所有測試,只執行一次,且必須為static void
@AfterClass:針對所有測試,只執行一次,且必須為static void
只要有在類中要測試的方法前加入@Test,這個類就是一個測試用例。而加了對應注釋的方法就是各個功能方法,比如初始化和清理。
JUnit4相對以前的增強體現在以下的注釋中:
@Test(expected=Exception.class):異常測試,斷言異常必定產生
@Test(timeout=n):要求測試在允許超時時間(n秒)中完成
@Ignore:忽略某個測試方法
@Parameters:提供參數測試,也就是用一組參數測試代碼
而且JUint4對ant1.7以下的版本有兼容性問題。
以上講的JUnit用法就是最最常用用法。