@SpringBootTest 和 @RunWith 注解不能识别 单元测试第一步引入maven依赖

发布时间 2023-12-06 19:47:22作者: sunny123456

@SpringBootTest 和 @RunWith 注解不能识别 单元测试第一步引入maven依赖

一、背景

       最近在预研 Rocketmq,在写小例子的时候,需要编写测试代码,突然间发现我的 @SpringBootTest 和 @RunWith 这两个注解不能识别,于是展开了我的问题排查过程。问题截图如下:

二、问题排查

        我怀疑是 maven 依赖没有加进去,特意查了下,确定只需要引入下面的 maven 依赖就可以了。

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-test</artifactId>
  4. <scope>test</scope>
  5. </dependency>

        怀疑是 maven 依赖的 jar 包由于网络原因没有下载成功,导致虽然能识别但是添加不进去,我看了下我项目中的 maven 依赖,发现有很多的 jar 包都是黑色的,如下所示:

        百度查了下为什么 maven 依赖中的 jar 包会出现黑色的,是因为 maven 依赖中的 <scope>test</scope>scope 为 test 表示所依赖的项目仅仅参与测试相关的工作,此时如果我们注释掉 maven 依赖中的的 <scope>test</scope>,效果如下所示:

        回到上面的问题,我们的测试代码位置,必须放在 src --- test --- java 这个目录下,这些特有的注解才会被识别,如果你的测试代码放在了 src --- main --- java 这个目录下,那么这些注解还是不能被识别。

原文链接:https://blog.csdn.net/xhf852963/article/details/108159724