使用pax-exam(4.13.1)运行集成测试后,关闭maven-surefire- / failsafe-plugin大约需要30秒钟。无论测试是否失败。
我尝试了不同的pax考试配置,即使测试次数也没有关系。但是测试通过后,我看到以下日志输出
08:26:21.960 [main] DEBUG org.ops4j.pax.exam.karaf.container.internal.KarafTestContainer - Shutting down the test container (Pax Runner)
08:26:23.584 [main] INFO org.ops4j.pax.exam.spi.reactors.ReactorManager - suite finished
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 20.651 s - in com.foo.integrationtests.BarIT
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 53.191 s
[INFO] Finished at: 2019-04-08T08:26:53+02:00
[INFO] ------------------------------------------------------------------------
我不明白为什么在关闭测试套件后,Maven插件需要大约30秒才能完成。有人知道为什么吗?
答案 0 :(得分:0)
似乎实际版本中存在错误 pax-exam
但是我找到了解决此问题的方法。在插件配置中添加以下内容,会将分叉进程的超时从30秒减少到0。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-failsafe-plugin.version}</version>
<configuration>
<forkedProcessExitTimeoutInSeconds>0</forkedProcessExitTimeoutInSeconds>
</configuration>
</plugin>