JUnit5 與 JUnit4 區別及及新特性

Junit5架構與簡述

Junit5 與以前的JUnit版本不同,JUnit 5由來自三個不同子項目的幾個不同模塊組成。

JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage

  • JUnit Platform

作用於JVM上啓動測試框架。還定義了開發在平臺上運行的測試框架的TestEngine API。開發或測試人員可從命令行啓動平臺,實現基於JUnit 4的運行。JUnit Platform同時也支持Gradle、Maven和Ant來運行。

  • JUnit Jupiter

用於在JUnit 5中編寫測試和擴展的新編程模型和擴展機制。Jupiter子項目提供了一個測試引擎,用於在平臺上運行基於Jupiter的測試。

  • JUnit Vintage

這是Junit5提供了一個兼容機制,使得基於JUnit 3和JUnit 4的測試腳本都可以在此運行。

Junit5運行支持的jdk版本

jdk1.8及以上的版本

JUnit4 與 JUnit 5 常用註解對比

JUnit4 JUnit5 說明
@Test @Test 該方法表示一個測試方法
@BeforeClass @BeforeAll 表示使用了該方法在當前類中所有使用@Test 的方法之前 執行一次
@AfterClass @AfterAll 該方法在當前類中所有使用@Test 的方法之後 執行一次
@Before @BeforeEach 該方法在當前類中每一個使用了@Test方法之前 執行一次
@After @AfterEach 該方法在當前類中每一個使用了@Test方法之後執行一次
@Ignore @Disabled 該方法表示不執行(關閉)該測試方法
@Parameters @ParameterizedTest 該方法是用於參數化數據的

參考文檔:Junit官方文檔描述。詳情可見官網描述。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章