Pitest警告:由于TIMED_OUT,从站异常退出

Sun*_*ani 6 java maven-plugin maven-3 maven pitest

我应该如何摆脱这个警告并为pitest添加超时常量?

我的命令是:

mvn jacoco:report org.pitest:pitest-maven:mutationCoverage sonar:sonar -Dpitest.timeoutConst=8000
Run Code Online (Sandbox Code Playgroud)

但它会引发:警告:由于TIMED_OUT,Slave异常退出

hen*_*nry 10

您不太可能摆脱所有警告 - 当突变产生无限循环时会生成它们.

Pitest通过比较每个测试的执行时间与不存在突变所花费的时间来检测这些.如果测试需要花费更多的时间来运行,那么该过程将被终止并且突变被标记为超时.

pitest报告警告的原因是万一将突变标记为无限循环过于仓促 - 可能由于其他原因导致事情运行缓慢.

如果你有很多超时,首先要做的是检查报告,看看它们是否都看起来像是合法的无限循环.如果他们这样做,那就没有什么可做的了.

有些超时看起来不像无限循环,那么你可以尝试增加超时常量.

这可以在pom中设置,也可以在命令行上传递.它不应该以pitest为前缀.

mvn org.pitest:pitest-maven:mutationCoverage -DtimeoutConstant=8000

  • 我不确定这是否已更改或原始答案中的拼写错误,但使用最新版本的 Pitest 插件(1.2.3),您需要稍微不同的参数拼写。您现在需要使用 -DtimeoutConstant=8000 (2认同)
  • @henry 我怎样才能找到那些超时的测试?在报告中将它们一一点击? (2认同)