SpringBoot 單元測(cè)試JUnit的使用詳解
一、簡(jiǎn)介
JUnit是一款優(yōu)秀的開(kāi)源Java單元測(cè)試框架,也是目前使用率最高最流行的測(cè)試框架,開(kāi)發(fā)工具Eclipse和IDEA對(duì)JUnit都有很好的支持,JUnit主要用于白盒測(cè)試和回歸測(cè)試。
白盒測(cè)試:把測(cè)試對(duì)象看作一個(gè)打開(kāi)的盒子,程序內(nèi)部的邏輯結(jié)構(gòu)和其他信息對(duì)測(cè)試人 員是公開(kāi)的;
回歸測(cè)試:軟件或環(huán)境修復(fù)或更正后的再測(cè)試;
單元測(cè)試:最小粒度的測(cè)試,以測(cè)試某個(gè)功能或代碼塊。一般由程序員來(lái)做,因?yàn)樗枰纼?nèi)部程序設(shè)計(jì)和編碼的細(xì)節(jié);
二、JUnit使用
1、pom.xml中添加JUnit依賴。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
2、簡(jiǎn)單代碼
@RunWith(SpringRunner.class)
@SpringBootTest
public class JUnitTest {
@Test
public void test() {
System.out.println(("----- method test ------"));
String name = "yunfan";
Assert.assertEquals("yunfan22", name);
}
}
在測(cè)試類中運(yùn)行項(xiàng)目:

很明顯這是測(cè)試不通過(guò)的效果,如果是通過(guò)的呢,看下圖:

3、注解說(shuō)明
| 注解 | 釋義 |
|---|---|
| @RunWith | 標(biāo)識(shí)為JUnit的運(yùn)行環(huán)境。 |
| @SpringBootTest | 獲取啟動(dòng)類、加載配置,確定裝載Spring Boot。 |
| @Test | 聲明需要測(cè)試的方法。 |
| @BeforeClass | 針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void。 |
| @AfterClass | 針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void。 |
| @Before | 每個(gè)測(cè)試方法前都會(huì)執(zhí)行的方法。 |
| @After | 每個(gè)測(cè)試方法前都會(huì)執(zhí)行的方法。 |
| @Ignore | 忽略方法。 |
4、超時(shí)測(cè)試
@Test(timeout = 1000)
5、斷言測(cè)試
斷言測(cè)試也就是期望值測(cè)試,是單元測(cè)試的核心也就是決定測(cè)試結(jié)果的表達(dá)式。
| 方法 | 釋義 |
|---|---|
| Assert.assertEquals | 對(duì)比兩個(gè)值相等 |
| Assert.assertNotEquals | 對(duì)比兩個(gè)值不相等 |
| Assert.assertSame | 對(duì)比兩個(gè)對(duì)象的引用相等 |
| Assert.assertArrayEquals | 對(duì)比兩個(gè)數(shù)組相等 |
| Assert.assertTrue | 驗(yàn)證返回是否為真 |
| Assert.assertFlase | 驗(yàn)證返回是否為假 |
| Assert.assertNull | 驗(yàn)證null |
| Assert.assertNotNull | 驗(yàn)證非null |
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- springboot集成junit編寫(xiě)單元測(cè)試實(shí)戰(zhàn)
- SpringBoot與單元測(cè)試JUnit的結(jié)合操作
- SpringBoot+JUnit5+MockMvc+Mockito單元測(cè)試的實(shí)現(xiàn)
- SpringBoot環(huán)境下junit單元測(cè)試速度優(yōu)化方式
- Springboot集成JUnit5優(yōu)雅進(jìn)行單元測(cè)試的示例
- 基于Springboot+Junit+Mockito做單元測(cè)試的示例
- Springboot結(jié)合Junit單元測(cè)試的實(shí)現(xiàn)
相關(guān)文章
Java實(shí)現(xiàn)從jar包中讀取指定文件的方法
這篇文章主要介紹了Java實(shí)現(xiàn)從jar包中讀取指定文件的方法,涉及java針對(duì)jar文件的讀取及查找相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
InterProcessMutex實(shí)現(xiàn)zookeeper分布式鎖原理
本文主要介紹了InterProcessMutex實(shí)現(xiàn)zookeeper分布式鎖原理,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
mybatis-plus生成mapper擴(kuò)展文件的方法
這篇文章主要介紹了mybatis-plus生成mapper擴(kuò)展文件的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
SpringBoot?AspectJ切面配合自定義注解實(shí)現(xiàn)權(quán)限校驗(yàn)的示例詳解
本文章介紹了如何通過(guò)創(chuàng)建自定義的權(quán)限校驗(yàn)注解,配合AspectJ切面攔截注解實(shí)現(xiàn)權(quán)限校驗(yàn),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2025-09-09
基于JAVA每月運(yùn)勢(shì)api調(diào)用代碼實(shí)例
這篇文章主要為大家詳細(xì)介紹了JAVA每月運(yùn)勢(shì)api調(diào)用代碼實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09

