国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

JUnit

2019-11-14 21:10:18
字體:
供稿:網(wǎng)友
JUnit
  1. 核心斷言
    assertArrayEquals(expecteds, actuals)查看兩個(gè)數(shù)組是否相等。
    assertEquals(expected, actual)查看兩個(gè)對(duì)象是否相等。類似于字符串比較使用的equals()方法
    assertNotEquals(first, second)查看兩個(gè)對(duì)象是否不相等。
    assertNull(object)查看對(duì)象是否為空。
    assertNotNull(object)查看對(duì)象是否不為空。
    assertSame(expected, actual)查看兩個(gè)對(duì)象的引用是否相等。類似于使用“==”比較兩個(gè)對(duì)象
    assertNotSame(unexpected, actual)查看兩個(gè)對(duì)象的引用是否不相等。類似于使用“!=”比較兩個(gè)對(duì)象
    assertTrue(condition)查看運(yùn)行結(jié)果是否為true。
    assertFalse(condition)查看運(yùn)行結(jié)果是否為false。
    assertThat(actual, matcher)查看實(shí)際值是否滿足指定的條件
    fail()讓測(cè)試失敗
  2. 核心注解:
    @Before初始化方法,沒個(gè)測(cè)試方法執(zhí)行前都會(huì)執(zhí)行
    @After釋放資源,每個(gè)測(cè)試方法執(zhí)行后都會(huì)執(zhí)行
    @Test測(cè)試方法,在這里可以測(cè)試期望異常和超時(shí)時(shí)間
    @Ignore忽略的測(cè)試方法
    @BeforeClass針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void
    @AfterClass針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void
    @RunWith指定測(cè)試類使用某個(gè)運(yùn)行器
    @Parameters指定測(cè)試類的測(cè)試數(shù)據(jù)集合
    @Rule允許靈活添加或重新定義測(cè)試類中的每個(gè)測(cè)試方法的行為
    @FixMethodOrder指定測(cè)試方法的執(zhí)行順序
  3. 執(zhí)行順序:一個(gè)測(cè)試類單元測(cè)試的執(zhí)行順序?yàn)椋篅BeforeClass –> @Before –> @Test –> @After –> @AfterClass每一個(gè)測(cè)試方法的調(diào)用順序?yàn)椋篅Before –> @Test –> @After
  4. 參數(shù)化測(cè)試就好比把一個(gè)輸入值,期望值的集合傳入測(cè)試方法,達(dá)到一次性測(cè)試的目的,步驟如下:
    • 為參數(shù)化測(cè)試類指定特殊的運(yùn)行器org.junit.runners.Parameterized,指定運(yùn)行器使用@RunWith,使用Parameterized運(yùn)行器的語法為:@RunWith(Parameterized.class),即在Parameterized中運(yùn)行測(cè)試
    • 為測(cè)試類聲明多個(gè)變量,分別用于存放期望值和測(cè)試所用數(shù)據(jù)
    • 為測(cè)試類聲明一個(gè)帶有參數(shù)的公共構(gòu)造函數(shù),并在其中為第二個(gè)環(huán)節(jié)中聲明的幾個(gè)變量賦值
    • 為測(cè)試類聲明一個(gè)使用org.junit.runners.Parameterized.Parameters修飾的,返回值為java.util.Collection的公共靜態(tài)方法,并在此方法中初始化所有需要測(cè)試的參數(shù)對(duì)
    • 編寫測(cè)試方法使用定義的變量作為參數(shù)進(jìn)行測(cè)試
  5. 打包測(cè)試,就是一次性運(yùn)行完包中所包含的所有測(cè)試類的執(zhí)行,示例代碼如下:
    @RunWith(Suite.class)  @Suite.SuiteClasses({ AssertTests.class, FibonacciTest.class, JDemoTest.class })  public class AllCaseTest {    }
    AllCaseTest即是打包測(cè)試類,它的內(nèi)容是空,運(yùn)行該類就會(huì)運(yùn)行AssertTests,FabonaccitTest,JDemoTest的測(cè)試代碼
  6. 異常測(cè)試:最常用寫法如下,注意先寫期望的異常,然后才進(jìn)行函數(shù)調(diào)用
    @Rule  public ExpectedException thrown = ExpectedException.none();   @Test  public void shouldTestExceptionMessage() throws IndexOutOfBoundsException {      List<Object> list = new ArrayList<Object>();        thrown.expect(IndexOutOfBoundsException.class);      thrown.expectMessage("Index: 0, Size: 0");      list.get(0);      Assert.assertEquals(1, list.get(0));  }

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 陆川县| 昌江| 高台县| 类乌齐县| 辽宁省| 乡宁县| 美姑县| 邮箱| 册亨县| 克东县| 苍南县| 万安县| 林州市| 南雄市| 莆田市| 靖江市| 斗六市| 平远县| 德化县| 凌云县| 永康市| 景宁| 宁化县| 祁东县| 绥阳县| 女性| 砀山县| 栖霞市| 丁青县| 马关县| 九江市| 且末县| 富源县| 长岭县| 东乌| 许昌县| 澄城县| 广宁县| 芮城县| 万宁市| 盐边县|