作者:东北的小爷们_366 | 来源:互联网 | 2022-11-28 17:48
我试图用maven运行一个简单的junit测试,但它没有检测到任何测试.我哪里错了?项目目录
Project -> src -> test-> java -> MyTest.java
结果:
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
的pom.xml
4.0.0
com.buildproftest.ecs
buildprofiletest
1.0-SNAPSHOT
junit
junit
4.12
test
org.junit.jupiter
junit-jupiter-api
5.3.1
test
org.apache.maven.plugins
maven-surefire-plugin
org.apache.maven.plugins
maven-compiler-plugin
3.8.0
false
true
1.8
Junit测试用例
import org.junit.jupiter.api.Test;
public class MyTest {
@Test
public void printTest() {
System.out.println("Running JUNIT test");
}
}
响应是没有运行的测试用例.
感谢您的见解
1> LaurentG..:
根据annotation(import org.junit.jupiter.api.Test
),您尝试使用Maven运行JUnit 5测试.根据文档,您必须添加此依赖项:
org.junit.jupiter
junit-jupiter-engine
5.3.1
test
您的Maven版本附带的版本maven-surefire-plugin
不支持JUnit 5.您可以将Maven更新到最新版本.您还可以设置以下版本maven-surefire-plugin
:
org.apache.maven.plugins
maven-surefire-plugin
2.22.0
有关此信息,请参阅junit5-samples.
请参阅Maven存储库中的Maven Surefire插件工件.截至3.0.0-M3
2019-01的版本.
2> Basil Bourqu..:
junit-jupiter
—更简单的原型
LaurentG的答案似乎是正确的,但有些过时了。
从JUnit 5.4开始,您可以替换那些多个Maven工件:
junit
junit-jupiter-api
junit-jupiter-engine
…只有一个工件:
junit-jupiter
此新工件是其他工件的汇总,可以方便地包装以简化POM文件。
org.junit.jupiter
junit-jupiter
5.5.0-M1
test
这为您提供了编写和运行JUnit 5 Jupiter测试所需的全部功能。
如果您要继续运行旧的JUnit 3或JUnit 4 旧式测试,请添加第二个依赖项junit-vintage-engine
。
org.junit.jupiter
junit-jupiter
5.5.0-M1
test
org.junit.vintage
junit-vintage-engine
5.5.0-M1
test
您还需要Surefire插件,如该其他Answer中所示。一定要获取最新版本,因为Surefire最近已进行了一些重要的修复/增强。当前版本为3.0.0-M3。