您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
用Junit Test Suite來組合測試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2015/9/1 10:20:23 ] 推薦標(biāo)簽:單元測試工具 軟件測試

  在測試過程中,有時可能想一次性運行所有的測試類,或是選擇性的運行某些測試類。這樣的話我們可以用TestSuite來統(tǒng)一管理我們的測試類。
  比如說我現(xiàn)在有三個測試類:junitTest4,TestCase2和TryTest

  但是現(xiàn)在我不想運行全部的測試類,只想運行其中的junitTest4和TestCase2。這樣可以用junit test suite來管理。
  代碼如下:
  @RUNWith:指定運行器
  @SuiteClasses :指定要運行的測試類

  運行結(jié)果:

  由此可見,通過junit test suite我們可以共同管理不同的測試類,可以指定一次性只執(zhí)行我們想要執(zhí)行的測試類。
  TestSuite還可以不斷地嵌套其他的Testsuite,方便了對于不斷增加的TestCase的管理和維護(hù)。這種體系架構(gòu),非常類似于現(xiàn)實中程序一步步開發(fā)一步步集成的現(xiàn)況。
  說到suite,可能會疑惑,平時沒有定義suite的時候,單個測試類里面的用例是怎么運行起來的呢。其實是如果你沒有定義suite,那么測試運行器會自動創(chuàng)建一個suite。
  這個默認(rèn)的suite會掃描你的測試類,找到所有以@Test標(biāo)記的方法。默認(rèn)的suite會在內(nèi)部為每個@Test方法新建一個測試類的實例,然后junit會獨立的運行每個@Test方法。
  suite對象其實是一個runner,可以執(zhí)行一個測試類中所有被@Test注釋的方法。
  比如某個測試類:
  public class TryTest{
  @Test
  public void test1(){
  System.out.println("demo");
  }
  }
  其實默認(rèn)的suite是這樣的:
  public class TryTest{
  @RUNWith(Suite.Class)
  @SuiteClasses(TryTest.class)
  public void test1(){
  System.out.println("demo");
  }
  }

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd