国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Spring Boot單元測試

這篇具有很好參考價(jià)值的文章主要介紹了Spring Boot單元測試。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言??

??????SSM專欄更新中,各位大佬覺得寫得不錯(cuò),支持一下,感謝了!??????

Spring + Spring MVC + MyBatis_冷兮雪的博客-CSDN博客

Spring Boot 中進(jìn)行單元測試是一個(gè)常見的做法,可以幫助你驗(yàn)證應(yīng)用程序的各個(gè)組件是否按預(yù)期工作。所以我們有必要去學(xué)習(xí)一番!

一、什么是單元測試???

單元測試(unit testing),是指對軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證的過程就叫單元測試。單元測試是開發(fā)者編寫的一小段代碼,用于檢驗(yàn)被測代碼的?個(gè)很小的、很明確的(代碼)功能是否正確。執(zhí)行單元測試就是為了證明某段代碼的執(zhí)行結(jié)果是否符合我們的預(yù)期。如果測試結(jié)果符合我們的預(yù)期,稱之為測試通過,否則就是測試未通過(或者叫測試失?。?/span>

二、單元測試有哪些好處???

  1. 方便、快捷測試一個(gè)功能模塊(方法級別)
  2. 在打包時(shí)會(huì)運(yùn)行所以的單元測試,只有所有的單元測試都通過之后才能正常的打包,所以在這個(gè)過程中可以幫我們發(fā)現(xiàn)一些問題,減少問題的概率。
  3. 使用單元測試可以在不污染數(shù)據(jù)庫數(shù)據(jù)的情況下,來測試某個(gè)功能的正確性。(添加@Transactional注解即可)MyBatis查詢數(shù)據(jù)庫(2)_冷兮雪的博客-CSDN博客

三、Spring Boot 單元測試使用??

Spring Boot 項(xiàng)目創(chuàng)建時(shí)會(huì)默認(rèn)單元測試框架 spring-boot-test,而這個(gè)單元測試框架主要是依靠另? 個(gè)著名的測試框架 JUnit 實(shí)現(xiàn)的,打開 pom.xml 就可以看到,以下信息是 Spring Boot 項(xiàng)目創(chuàng)建是自動(dòng)添加的:

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
</dependency>

而 spring-boot-starter-test 的 MANIFEST.MF(Manifest 文件是用來定義擴(kuò)展或檔案打包的相關(guān)信息的)里面有具體的說明,如下信息所示:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

四、單元測試的實(shí)現(xiàn)步驟??

1.生成單元測試類??

在需要進(jìn)行單元測試的類里面右鍵:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

?UserMapperTest生成在text目錄下:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

package com.example.ssmdemo1.mapper;

import org.junit.jupiter.api.Test;

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

class UserMapperTest {

    @Test
    void getUserById() {
    }
}

這個(gè)時(shí)候,此方法是不能調(diào)用到任何單元測試的方法的,此類只生成了單元測試的框架類,具體的業(yè)務(wù)代碼要自己填充。

2、添加單元測試代碼??

Ⅰ、添加 Spring Boot 框架測試注解:@SpringBootTest??

package com.example.ssmdemo1.mapper;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

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

@SpringBootTest//表明當(dāng)前單元測試是運(yùn)行在Spring Boot環(huán)境中的
class UserMapperTest {

    @Test
    void getUserById() {
    }
}

Ⅱ、添加單元測試業(yè)務(wù)邏輯??

package com.example.ssmdemo1.mapper;

import com.example.ssmdemo1.entity.Userinfo;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

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

@SpringBootTest//1、表明當(dāng)前單元測試是運(yùn)行在Spring Boot環(huán)境中的
class UserMapperTest {
    //2、注入測試對象
    @Autowired
    private UserMapper userMapper;

    @Test
    void getUserById() {
        //3、添加單元測試的業(yè)務(wù)代碼
        Userinfo userinfo=userMapper.getUserById(1);
        System.out.println(userinfo);
    }
}

啟動(dòng)測試項(xiàng)目:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

我們進(jìn)行單元測試, 后面需要去運(yùn)行我們的項(xiàng)目,我們一定要將右上角重新切換過來:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

五、簡單的斷言說明??

方法 說明
assertEquals 判斷兩個(gè)對象或兩個(gè)原始類型是否相等
assertNotEquals 判斷兩個(gè)對象或兩個(gè)原始類型是否不相等
assertSame 判斷兩個(gè)對象引用是否指向同一個(gè)對象
assertNotSame 判斷兩個(gè)對象引用是否指向不同的對象
assertTrue 判斷給定的布爾值是否為 true
assertFalse 判斷給定的布爾值是否為 false
assertNull 判斷給定的對象引用是否為 nul
assertNotNull 判斷給定的對象用是否不為 null

斷言:如果斷言失敗,則后面的代碼都不會(huì)執(zhí)行。

package com.example.ssmdemo1.mapper;

import com.example.ssmdemo1.entity.Userinfo;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

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

@SpringBootTest//1、表明當(dāng)前單元測試是運(yùn)行在Spring Boot環(huán)境中的
class UserMapperTest {
    //2、注入測試對象
    @Autowired
    private UserMapper userMapper;

    @Test
    void getUserById() {
        //3、添加單元測試的業(yè)務(wù)代碼
        Userinfo userinfo=userMapper.getUserById(1);
        System.out.println(userinfo);
        //判斷1是否等于2 簡單斷言
        Assertions.assertEquals(1,2);
    }
}

?單元測試失?。?/p>

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

單元測試失敗,這時(shí)候我們?nèi)ゴ虬矔?huì)打包失?。?/p>

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

?打包失?。?img src="https://imgs.yssmx.com/Uploads/2023/07/547233-11.png" alt="Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端" referrerpolicy="no-referrer" />

?打包成功:

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端

Spring Boot單元測試,Spring + Spring MVC + MyBatis,spring boot,單元測試,后端文章來源地址http://www.zghlxwxcb.cn/news/detail-547233.html

到了這里,關(guān)于Spring Boot單元測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Spring Boot】單元測試

    單元測試在日常項(xiàng)目開發(fā)中必不可少,Spring Boot提供了完善的單元測試框架和工具用于測試開發(fā)的應(yīng)用。接下來介紹Spring Boot為單元測試提供了哪些支持,以及如何在Spring Boot項(xiàng)目中進(jìn)行單元測試。 單元測試主要用于測試單個(gè)代碼組件,以確保代碼按預(yù)期方式工作。目前流行的

    2024年02月16日
    瀏覽(17)
  • Spring boot 集成單元測試

    Spring boot 集成單元測試

    1.引入依賴 2. ?3.編寫測試類

    2024年02月11日
    瀏覽(22)
  • 【Spring Boot】SpringBoot 單元測試

    【Spring Boot】SpringBoot 單元測試

    單元測試(unit testing),是指對軟件中的最?可測試單元進(jìn)?檢查和驗(yàn)證的過程就叫單元測試。 1、可以?常簡單、直觀、快速的測試某?個(gè)功能是否正確。 2、使?單元測試可以幫我們在打包的時(shí)候,發(fā)現(xiàn)?些問題,因?yàn)樵诖虬埃缘膯卧獪y試必須通過,否則不能打包

    2024年02月07日
    瀏覽(22)
  • Spring Boot單元測試入門指南

    Spring Boot單元測試入門指南

    JUnit是一個(gè)成熟和廣泛應(yīng)用的Java單元測試框架,它提供了豐富的功能和靈活的擴(kuò)展機(jī)制,可以幫助開發(fā)人員編寫高質(zhì)量的單元測試。通過JUnit,開發(fā)人員可以更加自信地進(jìn)行重構(gòu)、維護(hù)和改進(jìn)代碼,同時(shí)提高代碼質(zhì)量和可維護(hù)性。 在使用Spring Boot進(jìn)行單元測試時(shí),以下是一些

    2024年02月15日
    瀏覽(24)
  • 三個(gè)要點(diǎn),掌握Spring Boot單元測試

    三個(gè)要點(diǎn),掌握Spring Boot單元測試

    單元測試是軟件開發(fā)中不可或缺的重要環(huán)節(jié),它用于驗(yàn)證軟件中最小可測試單元的準(zhǔn)確性。 結(jié)合運(yùn)用Spring Boot、JUnit、Mockito和分層架構(gòu),開發(fā)人員可以更便捷地編寫可靠、可測試且高質(zhì)量的單元測試代碼,確保軟件的正確性和質(zhì)量。 本文將從與單元測試相關(guān)的技術(shù)主題開始,

    2024年02月08日
    瀏覽(25)
  • Spring Boot 做單元測試,真心強(qiáng)悍!

    Spring Boot 做單元測試,真心強(qiáng)悍!

    Spring Boot 提供了豐富的測試功能,主要由以下兩個(gè)模塊組成: spring-boot-test :提供測試核心功能。 spring-boot-test-autoconfigure :提供對測試的自動(dòng)配置。 Spring Boot 提供了一個(gè)? spring-boot-starter-test 一站式啟動(dòng)器,如以下依賴配置所示。 測試啟動(dòng)器依賴不僅包含以上兩個(gè) Spring Bo

    2024年02月04日
    瀏覽(24)
  • Spring Boot 單元測試 0基礎(chǔ)教程

    咱們以一種通俗易懂的方式,通過一個(gè)簡單的實(shí)例來教你怎么在Spring Boot項(xiàng)目中進(jìn)行單元測試。 假設(shè)你有一個(gè)簡單的Spring Boot應(yīng)用,里面有一個(gè)UserService接口,以及它的實(shí)現(xiàn)類 UserServiceImpl,這個(gè)服務(wù)有一個(gè)方法用來獲取用戶的問候語。 為了對該方法進(jìn)行單元測試,我們可以創(chuàng)

    2024年04月16日
    瀏覽(17)
  • Spring Boot異常處理和單元測試

    Spring Boot異常處理和單元測試

    SpringBoot默認(rèn)的處理異常的機(jī)制:SpringBoot 默認(rèn)的已經(jīng)提供了一套處理異常的機(jī)制。一旦程序中出現(xiàn)了異常 SpringBoot 會(huì)向/error 的 url 發(fā)送請求。在 springBoot 中提供了一個(gè)叫 BasicErrorController 來處理/error 請求,然后跳轉(zhuǎn)到默認(rèn)顯示異常的頁面來展示異常信息 如 果我 們 需 要 將 所

    2024年03月17日
    瀏覽(28)
  • Spring Boot異常處理及單元測試

    Spring Boot異常處理及單元測試

    SpringBoot默認(rèn)的處理異常的機(jī)制:SpringBoot 默認(rèn)的已經(jīng)提供了一套處理異常的機(jī)制。一旦程序中出現(xiàn)了異常 SpringBoot 會(huì)向/error 的 url 發(fā)送請求。在 springBoot 中提供了一個(gè)叫 BasicErrorController 來處理/error 請求,然后跳轉(zhuǎn)到默認(rèn)顯示異常的頁面來展示異常信息 如 果我 們 需 要 將 所

    2024年01月19日
    瀏覽(62)
  • Spring Boot 單元測試,保姆級教程!

    Spring Boot 單元測試,保姆級教程!

    概念: 單元測試(unit testing),是指對軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證。在Java中單元測試的最小單元是類。 單元測試是開發(fā)者編寫的一小段代碼,用于檢驗(yàn)被測代碼的一個(gè)很小的、很明確的功能是否正確。執(zhí)行單元測試,就是為了證明這段代碼的行為和我們期望是

    2024年02月03日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包