六、SpringBoot整合Junit

5.2.1 添加Junit的起步依赖

XML 复制代码
<!--测试的起步依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>

5.2.2 编写测试类

java 复制代码
package com.baijie.fast_springboot_project;

import com.baijie.FastSpringbootProjectApplication;
import com.baijie.domain.User;
import com.baijie.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;
@SpringBootTest
class FastSpringbootProjectApplicationTests {

	@Autowired
	private UserMapper userMapper;

	@Test
	void contextLoads() {
		System.out.println(666);
		List<User> users = userMapper.queryUserList();
		for (User user : users) {
			System.out.println(user.toString());
		}
	}
}

【备注】

**在SpringBoot2.2.0以前是JUnit4,需@RunWith注解。**下图:

**在SpringBoot之后是JUnit5。SpringBoot的高级版本使用junit5进行单元测试,无需@RunWith注解即可进行测试。**如图:

【备注】

@SpringBootTest替代了spring-test中的@ContextConfiguration注解,目的是加载ApplicationContext,启动spring容器。

使用@SpringBootTest时并没有像@ContextConfiguration一样显示指定locations或classes属性,原因在于@SpringBootTest注解会自动检索程序的配置文件,检索顺序是从当前包开始,逐级向上查找被@SpringBootApplication或@SpringBootConfiguration注解的类。

5.2.3 控制台打印信息

相关推荐
西门老铁1 分钟前
JWT 是什么?三段式结构、签名原理与 6 个安全坑一次讲透
后端·面试
Codelinghu3 分钟前
DeepSeek Harness 出来了,干硬件的我琢磨了一下它到底能干啥
后端
eralong5 分钟前
Java 面向对象:继承、多态、接口
java·后端
骑士雄师24 分钟前
superpowers使用流程
junit·skill
苏三说技术36 分钟前
DeepSeek Harness必装的10个插件
后端
阿弱1 小时前
graph-core 策略合并机制的设计与用法
后端·agent
fatcoder1 小时前
玩转Docker 08 — 实战:容器化真实后端并编排
后端·docker·容器
神奇小汤圆1 小时前
从原始的CRUD 到高并发架构:关于秒杀系统的问题拆解与推演
后端
魔兽大山哥1 小时前
NL2SQL 最怕越权:我在执行层叠了好几层 SQL 闸门
后端
2601_963870181 小时前
【计算机毕业设计】基于Spring Boot的宠物领养救助平台的设计与实现
spring boot·课程设计·宠物