斷言是編寫測試用例的核心實現方式,即期望值是多少,測試的結果是多少,以此來判斷測試是否通過。
斷言核心方法
assertArrayEquals(expecteds, actuals) | 查看兩個數組是否相等。 |
assertEquals(expected, actual) | 查看兩個對象是否相等。類似於字符串比較使用的equals()方法 |
assertNotEquals(first, second) | 查看兩個對象是否不相等。 |
assertNull(object) | 查看對象是否爲空。 |
assertNotNull(object) | 查看對象是否不爲空。 |
assertSame(expected, actual) | 查看兩個對象的引用是否相等。類似於使用“==”比較兩個對象 |
assertNotSame(unexpected, actual) | 查看兩個對象的引用是否不相等。類似於使用“!=”比較兩個對象 |
assertTrue(condition) | 查看運行結果是否爲true。 |
assertFalse(condition) | 查看運行結果是否爲false。 |
assertThat(actual, matcher) | 查看實際值是否滿足指定的條件 |
fail() | 讓測試失敗 |
註解
@Before | 初始化方法 |
@After | 釋放資源 |
@Test | 測試方法,在這裏可以測試期望異常和超時時間 |
@Ignore | 忽略的測試方法 |
@BeforeClass | 針對所有測試,只執行一次,且必須爲static void |
@AfterClass | 針對所有測試,只執行一次,且必須爲static void |
@RunWith | 指定測試類使用某個運行器 |
@Parameters | 指定測試類的測試數據集合 |
@Rule | 允許靈活添加或重新定義測試類中的每個測試方法的行爲 |
@FixMethodOrder | 指定測試方法的執行順序 |
一個測試類單元測試的執行順序爲:
@BeforeClass –> @Before –> @Test –> @After –> @AfterClass
每一個測試方法的調用順序爲:
@Before –> @Test –> @After