springboot使用@SpringBootTest注解進行單元測試-創(chuàng)新互聯(lián)

一、示例 1.1 添加依賴
4.0.0org.examplespringboot-rabbitmq-fanout-producer1.0-SNAPSHOT88 org.springframework.boot spring-boot-dependencies 2.3.2.RELEASE pom importorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-test

在這里插入圖片描述
可見,我們的單元測試注解是來源spring-boot-starter-test這個依賴的。

創(chuàng)新互聯(lián)專注于銀川企業(yè)網(wǎng)站建設,成都響應式網(wǎng)站建設公司,商城網(wǎng)站開發(fā)。銀川網(wǎng)站建設公司,為銀川等地區(qū)提供建站服務。全流程定制開發(fā),專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務1.2 application.yml
# 服務端口
server:
  port: 8080
1.3 主啟動
package com;

import javafx.application.Application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class FanoutProducer {public static void main(String[] args) {SpringApplication.run(FanoutProducer.class, args);
    }
}
1.4 業(yè)務類
package com.service;

@Component
public class OrderService { public void makeOrder() {   System.out.println("測試成功!");
    }
}
1.5 單元測試類
package com.test;

import com.service.OrderService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class FanoutProducerApplicationTests {@Autowired
    OrderService orderService;

    @Test
    public void contextLoads() throws Exception {orderService.makeOrder();
    }
}

Springboot的@RunWith(SpringRunner.class)注解的意義在于Test測試類要使用注入的類,比如@Autowired注入的類,有了@RunWith(SpringRunner.class)這些類才能實例化到spring容器中,自動注入才能生效,不然直接一個NullPointerExecption。
當然,你也許會看見有些人使用時,沒有加上也可以正常使用,具體原因未知,可能是引用的依賴版本問題,視情況而定就行。

1.6 項目結(jié)構(gòu)

在這里插入圖片描述
關注畫了圈的即可。

二、版本說明

首先針對SpringBoot的測試類,2.2版本之前和2.2版本之后是不一樣的,在2.2版本之前需要貼注解@SpringBootTest和@RunWith(SpringRunner.class)需要在Spring容器環(huán)境下進行測試,因為@Test導包的是org.junit.Test,而 在2.2版本之后只需要貼注解@SpringBootTest,@Test導包為org.junit.jupiter.api.Test

三、重要事項

創(chuàng)建的測試類必須在主啟動類所在包路徑同級下或其子級下,否則無法掃描到bean,且無法注入需要的bean,會報錯

正確示例目錄結(jié)構(gòu):
在這里插入圖片描述

在這里插入圖片描述
錯誤示例:
在這里插入圖片描述
在這里插入圖片描述

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

文章標題:springboot使用@SpringBootTest注解進行單元測試-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://muchs.cn/article26/dhiijg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站排名、網(wǎng)站設計公司、做網(wǎng)站移動網(wǎng)站建設、品牌網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設計公司