我正在做一个非常简单的Spring Boot 2.4.2项目,使用BOM:
<dependency>
<!-- Import dependency management from Spring Boot -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.4.2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>在运行mvn clean verify时,我得到这样的结果:我们看到Surefire 2.12.4没有找到任何测试
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ api-testing ---
[INFO] Surefire report directory: C:\Users\vincent\IdeaProjects\api-testing\target\surefire-reports
------------------------------------------------------- T E S T S
-------------------------------------------------------
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0我不明白为什么..。我尝试了几种方法,即使不推荐这样做,我也尝试通过在我的pom中添加以下内容来覆盖该版本:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
</plugin>
</plugins>
</build>现在我的测试被找到了!
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ api-testing ---
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running de.vincent.AssetReferentialServiceTest我真的对这种Spring Boot行为感到惊讶--我想我遗漏了一些东西。但是什么呢?
注意:我的测试是Junit 5测试,我的类路径中没有与Junit 4相关的jars -只有Junit Jupiter 5.7.0和Junit platform 1.7.0
谢谢
发布于 2021-04-09 18:35:06
非常感谢@M. Deinum在评论中指出了这个问题。
当然,使用Spring Boot parent pom对使用正确的插件版本有很大帮助!
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.2</version>
</parent> BOM只对依赖项有帮助,对构建插件没有帮助。
https://stackoverflow.com/questions/66994359
复制相似问题