使用maven surefire进行java测试的时间超过指定的超时时间
我在pom中设置了所有超时属性。xml
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M3</version>
<configuration>
<forkCount>${surefire.forkNumber}</forkCount>
<reuseForks>false</reuseForks>
<argLine>-Xmx2G -XX:MaxMetaspaceSize=2G </argLine>
<parallel>methods</parallel>
<threadCount>${surefire.threadCount}</threadCount>
<forkedProcessTimeoutInSeconds>40s</forkedProcessTimeoutInSeconds>
<forkedProcessExitTimeoutInSeconds>40s</forkedProcessExitTimeoutInSeconds>
<parallelTestsTimeoutInSeconds>30s</parallelTestsTimeoutInSeconds>
<parallelTestsTimeoutForcedInSeconds>30s</parallelTestsTimeoutForcedInSeconds>
</configuration>
</plugin>
但我仍然看到一些测试需要超过40秒的时间(一个测试甚至需要17分钟)。可能的原因是什么?我如何使用surefire强制执行30秒超时
# 1 楼答案
文档指定必须启用选项
你一定要准备好
<parallelTestTimeoutForcedInSeconds>5</parallelTestTimeoutForcedInSeconds>
强制当前运行超时如果你正在使用
参考:http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html