我需要并行运行测试(JUnit5),但现在我不知道如何将参数传递到pom.xml中作为maven目标。
此刻,我在pom.xml中已经对maven-surefire-plugin进行了这种配置,但是我想将junit.jupiter.execution.parallel.enabled = true
作为一个maven目标,例如"parallel=true"
。
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<properties>
<configurationParameters>
junit.jupiter.execution.parallel.enabled = true
junit.jupiter.execution.parallel.mode.default = concurrent
junit.jupiter.execution.parallel.config.strategy=dynamic
junit.jupiter.extensions.autodetection.enabled = true
</configurationParameters>
</properties>
</configuration>
</plugin>
选择何时并行运行测试,何时在同一线程中运行测试可能很有用。
我该怎么做?你能帮我吗?
答案 0 :(得分:2)
我找到了解决方法。
在pom.xml
的属性中,我设置为:
<properties>
...
<parallel>false</parallel>
</properties>
接下来,在插件配置中,我将对此进行设置:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<properties>
<configurationParameters>
junit.jupiter.execution.parallel.enabled = ${parallel}
...
</configurationParameters>
</properties>
</configuration>
</plugin>
现在,我可以这样mvn -Dparallel=true test
来运行测试,并在我想并行运行测试时设置true
,或者当我想在同一线程中运行测试时false
设置