六、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 控制台打印信息

相关推荐
就像楞次定律6 分钟前
【Linux 学习记之二】C++ 构建体系与底层链接机制的深度透视(1)
linux·后端
学到老活到老8 分钟前
第 22 集:Filter、Interceptor、AOP 都能拦截,为什么不能互换?
java·后端·spring
郭小李35 分钟前
spring 中的 @EnableWebMvc注解和WebMvcConfigurer接口
java·后端·spring
卷无止境42 分钟前
Skill 的安全边界在哪里:风险来源、验证思路与用户可用的防线
后端·python
星核0penstarry1 小时前
企业 API 向后兼容实战:版本控制、废弃字段通知与灰度发布策略
人工智能·后端·api·接口隔离原则·版本控制·架构设计·后端架构
CoderYanger2 小时前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
aiks_yuan2 小时前
Spring Boot 4 注入 ObjectMapper 报找不到 Bean:升级 Jackson 3 的改法和过渡方案(4.1.2 实测)
spring boot
用户别睡觉2 小时前
自己搭的中文 PDF RAG 接了 Redis 缓存、跑了 RAGAS,以为能写“提速多少、准确率多少”,结果两个都没按预期来。
后端
彭亚川Allen2 小时前
985 在职研究生到底怎么样?是不是水硕?是不是.....?
前端·后端·程序员
乘风2482 小时前
# 我做了个会遗忘的 AI 记忆,召回率反而从 8% 涨到 100%
后端