1、添加依赖,必须添加在admin的pom文件中,要不然起不来(找不到启动类)

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

在这里插入图片描述

2、创建文件夹目录,测试类TestDemo必须写在com.cxjk下,或者com.cxjk下新建其他目录中,要不然会报错(找不到 @Autowired注入的),该测试类可作为最外层公共的,在建立controller,service包下对应的测试类

package com.cxjk;


import com.alibaba.fastjson2.JSONObject;
import com.cxjk.common.config.RuoYiConfig;
import com.cxjk.meeting.utils.AliSmsUtil;
import org.junit.jupiter.api.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.ArrayList;
import java.util.List;


@SpringBootTest
@DisplayName("单元测试类")
public class TestDemo {


    @BeforeAll
    public static void init(){
        System.out.println("******测试开始");
    }

    @AfterAll
    public static void end(){
        System.out.println("******测试结束");
    }

    @BeforeEach
    public  void initClass(){
        System.out.println("******测试开始初始化");
    }

    @AfterEach
    public  void endClass(){
        System.out.println("******测试结束初始化");
    }

    @Autowired
    private RuoYiConfig ruoYiConfig;

    @DisplayName("单元测试方法1")
    @Test
    public void test1() {
        System.out.println("方法1");
        System.out.println(ruoYiConfig);
    }

}

在这里插入图片描述
3、SpringBoot 从 2.4.X 开始默认使用 JUnit5 做单元测试,以下为单元测试各个注解
在这里插入图片描述
4、本文参考内容(SpringBoot 2.X 整合 JUnit5 及全方位使用手册)

https://lionli.blog.csdn.net/article/details/127576604?ydreferer=aHR0cHM6Ly9naXRlZS5jb20v

5、以上就是若依分离版整合过程,如果springboot版本较低需要整合JUnit4可参考如下内容:
(1)引入依赖:

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

(2)创建公共的单元测试类

package com.cxjk.cxcm;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
@WebAppConfiguration
public class CxcmApplicationTest {

    @Before
    public void init(){
        System.out.println("******测试开始");
    }

    @After
    public void end(){
        System.out.println("******测试结束");
    }

    @BeforeClass
    public static void initClass(){
        System.out.println("******测试开始初始化");
    }

    @AfterClass
    public static void endClass(){
        System.out.println("******测试结束初始化");
    }
}

(3)在建立controller,service包下对应的测试类
注意:SpringBoot 2.1.18.RELEASE(包含)之前的版本使用的Junit4,之后使用的是Junit5版本,Junit5 在SpringBoot 2.4.0(包含)之后的版本去除了Vintage测试引擎。2者使用的注解有的是不一样的。

注意事项:运行测试方法的时候可能会比较慢,原因是你SpringBootTest设置的默认启动整个程序了
@RunWith(SpringJunit4ClassRunner.class)
@SpringBootTest //默认启动整个程序
@SpringBootTest(classes = Application.class) //启动整个程序
@SpringBootTest(classes = Test.class) //启动Test类

在这里插入图片描述

Logo

快速构建 Web 应用程序

更多推荐