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

很明顯這是測試不通過的效果,如果是通過的呢,看下圖:

3、注解說明
| 注解 | 釋義 |
|---|---|
| @RunWith | 標識為JUnit的運行環(huán)境。 |
| @SpringBootTest | 獲取啟動類、加載配置,確定裝載Spring Boot。 |
| @Test | 聲明需要測試的方法。 |
| @BeforeClass | 針對所有測試,只執(zhí)行一次,且必須為static void。 |
| @AfterClass | 針對所有測試,只執(zhí)行一次,且必須為static void。 |
| @Before | 每個測試方法前都會執(zhí)行的方法。 |
| @After | 每個測試方法前都會執(zhí)行的方法。 |
| @Ignore | 忽略方法。 |
4、超時測試
@Test(timeout = 1000)
5、斷言測試
斷言測試也就是期望值測試,是單元測試的核心也就是決定測試結(jié)果的表達式。
| 方法 | 釋義 |
|---|---|
| Assert.assertEquals | 對比兩個值相等 |
| Assert.assertNotEquals | 對比兩個值不相等 |
| Assert.assertSame | 對比兩個對象的引用相等 |
| Assert.assertArrayEquals | 對比兩個數(shù)組相等 |
| Assert.assertTrue | 驗證返回是否為真 |
| Assert.assertFlase | 驗證返回是否為假 |
| Assert.assertNull | 驗證null |
| Assert.assertNotNull | 驗證非null |
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Security異步無法獲取用戶認證信息的解決方法
最近使用 Springboot 中 @Async 注解異步調(diào)用方法時,發(fā)現(xiàn)無法獲取到用戶認證信息,本文小編給大家介紹了Spring Security異步無法獲取用戶認證信息的原因和解決方法,并通過代碼示例介紹的非常詳細,需要的朋友可以參考下2024-09-09
Spring很常用的@Conditional注解的使用場景和源碼解析
今天要分享的是Spring的注解@Conditional,@Conditional是一個條件注解,它的作用是判斷Bean是否滿足條件,本文詳細介紹了@Conditional注解的使用場景和源碼,需要的朋友可以參考一下2023-04-04

