我们最近更新到maven-surefire-plugin
v2.22.1 和junit
v5.4.0 时发现此错误:[错误]无法在项目 xxx 上执行目标 org.apache.maven.plugins:maven-surefire-plugin:2.22.1:test (default-test):没有执行任何测试!(设置 -DfailIfNoTests=false 以忽略此错误。-> [帮助 1]
经过几次检查,我们发现我们必须:
-
从我们的配置中删除此行:
junit.jupiter.extensions.autodetection.enabled = true
-
并且还包括这个以继续使用并行执行:
junit.jupiter.execution.parallel.mode.default = concurrent
对于第二点,它在用户指南中得到了澄清,但我们对第一点一无所知......有人可以解释一下可能是什么原因吗?这可能是一个错误吗?
谢谢!
使用 Maven Surefire 3.x
Maven Surefire版本3.x
为JUnit平台提供了更好的支持。请将 Surefire 升级到3.0.0-M3
或更高版本。
JUnit 木星并行测试执行
要启用并行测试执行,您需要执行两个配置步骤:
- 将
junit.jupiter.execution.parallel.enabled
设置为true
。 - 将
junit.jupiter.execution.parallel.mode.default
设置为concurrent
以激活所有测试容器(包括类、测试模板和动态容器)的并发执行模式,或者对所有应参与并行测试执行的测试类使用@Execution(CONCURRENT)
注释。
有关更多详细信息,请参阅 https://junit.org/junit5/docs/current/user-guide/#writing-tests-parallel-execution