最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

快速上手Java單元測試框架JUnit5

 更新時間:2021年06月29日 09:56:32   作者:自動化代碼美學(xué)  
今天給大家?guī)淼氖顷P(guān)于Java單元測試的相關(guān)知識,文章圍繞著Java單元測試框架JUnit5展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下

為什么學(xué)JUnit5

Java技術(shù)棧的單元測試框架有兩個:JUnit和TestNG,有種說法是TestNG比JUnit更強大,學(xué)TestNG就夠了,但是當(dāng)我打開GitHub看到star的時候,猶豫了:

JUnit

TestNG

相差了足足有3K之多。帶著這個困惑,我在網(wǎng)上查閱了一番資料,原來JUnit5相較于JUnit4有了重大升級,已經(jīng)包含了TestNG的所有功能。為了堅定我學(xué)JUnit的想法,我咨詢了身邊做Java開發(fā)的朋友,開發(fā)寫UT都是用的JUnit。這兩個理由足以讓我開始對JUnit5的學(xué)習(xí)。

JUnit5是什么

跟之前的JUnit有所不同,JUnit5由三個子項目的模塊組成:

JUnit5 = JUnit Platform + JUnit Jupiter + JUnit Vintage

  • JUnit Platform 在JVM上啟動測試框架的基礎(chǔ),不僅支持Junit自制的測試引擎,其他測試引擎也都可以接入。提供了從命令行啟動平臺的Console Launcher,和支持JUnit4環(huán)境的JUnit4 based Runner。IDE一般都集成了JUnit Platform,比如IntelliJ IDEA。
  • JUnit Jupiter JUnit5新特性,結(jié)合了新的programming model和extension model,以便于在JUnit5中編寫測試和擴展。提供了在平臺上運行基于Jupiter測試的TestEngine。
  • JUnit Vintage 提供了在平臺上運行基于JUnit3和JUnit4測試的TestEngine,照顧老的項目。

JUnit5新特性

使用JUnit Jupiter寫測試

示例代碼:

import static org.junit.jupiter.api.Assertions.assertEquals;

import example.util.Calculator;

import org.junit.jupiter.api.Test;

class MyFirstJUnitJupiterTests {

    private final Calculator calculator = new Calculator();

    @Test
    void addition() {
        assertEquals(2, calculator.add(1, 1));
    }

}

注意這個導(dǎo)包的路徑org.junit.jupiter.api,Jupiter就是JUnit5的新特性。

兼容JUnit4和JUnit3

JUnit Vintage提供了在平臺上運行基于JUnit3和JUnit4測試的TestEngine, 并且新的包org.junit.jupiter避免了和JUnit4的org.junit在classpath上有任何沖突。

多IDE運行

JUnit能在IntelliJ IDEA、Eclipse、NetBeans、Visual Studio Code等IDE中運行。

從JUnit Jupiter擴展Model

示例:

@ExtendWith(RandomParametersExtension.class)
@Test
void test(@Random int i) {
    // ...
}

給test方法注冊了一個新的RandomParametersExtension。

更多高級用法

JUnit5提供了更多高級用法,比如JUnit Platform Launcher API和JUnit Platform Test Kit等,這些會在之后的文章逐一進(jìn)行介紹。

小結(jié)

本文首先解釋了為什么要學(xué)JUnit5,一是因為全新一代JUnit功能更加強大,二是Java開發(fā)寫單元測試都是用的JUnit,然后介紹了JUnit5是什么以及它的新特性。學(xué)習(xí)JUnit,在單元測試這條路上,又往前邁了一步。

參考資料:

https://junit.org/junit5/docs/current/user-guide/

http://m.fzitv.net/article/216198.htm

到此這篇關(guān)于快速上手Java單元測試框架JUnit5的文章就介紹到這了,更多相關(guān)Java單元測試框架JUnit5內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • pagehelper插件顯示total為-1或1的問題

    pagehelper插件顯示total為-1或1的問題

    這篇文章主要介紹了pagehelper插件顯示total為-1或1,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • Maven+SSM框架實現(xiàn)簡單的增刪改查

    Maven+SSM框架實現(xiàn)簡單的增刪改查

    這篇文章主要介紹了Maven+SSM框架實現(xiàn)簡單的增刪改查,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 【IntelliJ IDEA】Maven構(gòu)建自己的第一個Java后臺的方法

    【IntelliJ IDEA】Maven構(gòu)建自己的第一個Java后臺的方法

    本篇文章主要介紹了Maven構(gòu)建自己的第一個Java后臺的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • 基于Consumer接口、Predicate接口初使用

    基于Consumer接口、Predicate接口初使用

    這篇文章主要介紹了Consumer接口、Predicate接口初使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Springboot程序在使用Maven下載依賴時失效的解決方法

    Springboot程序在使用Maven下載依賴時失效的解決方法

    以前能成功創(chuàng)建SpringBoot項目并運行,但是現(xiàn)在再創(chuàng)建新項目時Maven下載依賴失敗,且maven依賴刷新按鍵一直沒反應(yīng),所以本文給大家介紹了Springboot程序在使用Maven下載依賴時失效的解決方法,需要的朋友可以參考下
    2024-05-05
  • Java Web端程序?qū)崿F(xiàn)文件下載的方法分享

    Java Web端程序?qū)崿F(xiàn)文件下載的方法分享

    這篇文章主要介紹了Java Web端程序?qū)崿F(xiàn)文件下載的方法分享,包括一個包含防盜鏈功能的專門針對圖片下載的程序代碼示例,需要的朋友可以參考下
    2016-05-05
  • Java項目的目錄結(jié)構(gòu)詳解

    Java項目的目錄結(jié)構(gòu)詳解

    本文主要介紹了Java項目的目錄結(jié)構(gòu)詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • JAVA中的deflate壓縮實現(xiàn)方法

    JAVA中的deflate壓縮實現(xiàn)方法

    下面小編就為大家?guī)硪黄狫AVA中的deflate壓縮實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Java Optional實踐(小結(jié))

    Java Optional實踐(小結(jié))

    這篇文章主要介紹了Java Optional實踐(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • 使用Java實現(xiàn)一個能保留計算過程的計算器

    使用Java實現(xiàn)一個能保留計算過程的計算器

    計算器是我們?nèi)粘I钪谐S玫墓ぞ咧?它能夠進(jìn)行基本的數(shù)學(xué)運算,如加法、減法、乘法和除法,而在設(shè)計一個計算器時,我們可以通過使用Java編程語言來實現(xiàn)一個簡單的控制臺計算器,并且讓它能夠保留計算過程,文中有詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-11-11

最新評論

满洲里市| 克什克腾旗| 栾城县| 郧西县| 洛南县| 巴林右旗| 闻喜县| 盐池县| 贵南县| 清徐县| 厦门市| 永康市| 洛宁县| 厦门市| 张北县| 苍溪县| 琼中| 兴隆县| 长治市| 无锡市| 瓦房店市| 牡丹江市| 东港市| 平度市| 蒲城县| 巫溪县| 喀喇沁旗| 鄱阳县| 东海县| 电白县| 永福县| 靖安县| 安泽县| 夹江县| 富裕县| 巴里| 壶关县| 都昌县| 祥云县| 固阳县| 罗山县|