答猫大人
1. 确认 spring-boot-starter-test 依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
2. 如果依赖传递有问题,可尝试显式添加spring-test:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.3.9</version> <!-- Spring Boot 2.5.3 对应的版本 -->
<scope>test</scope>
</dependency>
3. 测试类应使用JUnit 5的@ExtendWith注解,而非旧的@RunWith:
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.test.context.junit.jupiter.SpringExtension;
@ExtendWith(SpringExtension.class) // 正确使用 JUnit 5 扩展
@SpringBootTest
public class MyTest {
// 测试方法
}
4. 如果还有问题运行以下命令检查依赖树:
mvn dependency:tree -Dincludes=org.springframework:spring-test,org.junit.jupiter
5. 清理并重新构建项目
清理Maven本地仓库(~/.m2/repository)中残留的无效依赖。
在IDE中执行以下操作:
Maven:mvn clean install -U
IntelliJ/Eclipse:刷新依赖并重启IDE。