[SpringBoot]@SpringBootTest标签作用

一.作用对比

特性 @SpringBootTest(集成测试) 普通 @Test(单元测试)
上下文 加载完整 Spring 应用上下文 无 Spring 上下文
依赖注入 可 @Autowired 注入 Bean 需手动 new 对象
测试范围 全链路(Controller→Service→DAO) 单个方法 / 类
执行速度 较慢(需初始化上下文) 极快
适用场景 验证组件协作、配置是否正确 验证单个方法逻辑

二.作用

  • 适用场景 :测试需要完整 Spring 上下文的逻辑(如 Service 调用 DAO、Controller 调用 Service、依赖注入是否正常),区别于只测试单个方法的单元测试(如@Test);
  • 核心能力 :
    1. 自动加载application.yml/properties配置;
    2. 初始化所有@Component/@Service/@Controller等 Bean;
    3. 支持模拟 Web 环境、数据库连接等真实应用场景;
  • 依赖 :需引入spring-boot-starter-test依赖(Spring Boot 项目默认已包含)

三.由于@SpringBootTest带来的Exception

3.1缺少@SpringBootTest带来的无法自动装配的问题

相关推荐
代码什么用2 小时前
Spring基础使用
java·后端·spring
Su米苏3 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
码云数智-园园3 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
老板一杯拿铁3 小时前
Java 异常体系详解:从字节码原理到最佳实践
java
蜗牛互联网3 小时前
Java 17 HttpClient调用文件转写API的超时与失败回退
java·人工智能·后端
禾小西4 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨4 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
小卡车5554 小时前
java反射、自定义注解的应用(自定义分页)
java
BLUcoding5 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
yuniko-n5 小时前
【JUC】Lock 和 synchronzied 锁
java