简体   繁体   English

Pitest报告无法在Intellij IDEA中生成

[英]Pitest Report Failed to Generated In Intellij IDEA

I am using Pitest for mutation testing in IntelliJ IDEA (plugin: https://plugins.jetbrains.com/plugin/7119-pit-mutation-testing-idea-plugin ). 我正在使用pitest在IntelliJ IDEA中进行突变测试(插件: https ://plugins.jetbrains.com/plugin/7119-pit-mutation-testing-idea-plugin)。 After running all test case, I got the following message at the end of execution: 运行所有测试用例后,执行结束时得到以下消息:

Exception in thread "main" org.pitest.help.PitHelpError: All tests did not pass without mutation when calculating line coverage. 线程“主”中的异常org.pitest.help.PitHelpError:计算线路覆盖率时,所有测试都没有通过而没有突变。 Mutation testing requires a green suite. 变异测试需要绿色套件。 See http://pitest.org for more details. 有关更多详细信息,请参见http://pitest.org at org.pitest.coverage.execute.DefaultCoverageGenerator.verifyBuildSuitableForMutationTesting(DefaultCoverageGenerator.java:109) at org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:94) at org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:49) at org.pitest.mutationtest.tooling.MutationCoverage.runReport(MutationCoverage.java:115) at org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:117) at org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:49) at org.pitest.mutationtest.commandline.MutationCoverageReport.runReport(MutationCoverageReport.java:87) at org.pitest.mutationtest.commandline.MutationCoverageReport.main(MutationCoverageReport.java:45) org.pitest.coverage.execute.DefaultCoverageGenerator.verifyBuildSuitableForMutationTesting(DefaultCoverageGenerator.java:109)处org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:94)org.pitest.coverage.execute.DefaultCover处(DefaultCoverageGenerator.java:49)在org.pitest.mutationtest.tooling.MutationCoverage.runReport(MutationCoverage.java:115)在org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:117)在org.pitest。 org.pitest.mutationtest.commandline.MutationCoverageReport.main(MutationCoverageReport.java: 45)

Process finished with exit code 1 Open report in browser 流程以退出代码1完成在浏览器中打开报告

I cannot open the report in the browser because the file is not generated. 我无法在浏览器中打开报告,因为未生成文件。

I already edit the Pitest configuration: 我已经编辑了Pitest配置:

Report dir : /Users/me/reports/pit
Other params : --outputFormats XML,HTML

Did I miss something? 我错过了什么?

Thanks 谢谢

As the message says mutation testing requires a green test suite: you cannot mutation test if some of your tests are failing. 如消息所示,突变测试需要绿色测试套件:如果某些测试失败,则无法进行突变测试。

So either some of your tests fail when you run them, or you have encountered an issue where the tests run green normally but fail when run by pitest. 因此,您的某些测试在运行时会失败,或者遇到了这样的问题:测试正常运行为绿色,但在测试时运行失败。

Common causes of tests failing for pitest are mentioned in the faq 常见问题中提到了测试失败的常见原因

Most commonly this is because either : 最常见的原因是:

  • PIT is picking up tests that are not included/are excluded in the normal test config PIT正在拾取正常测试配置中未包含/排除的测试

  • Some test rely on an environment variable or other property set in the test config, but not set in the pitest config 某些测试依赖于在测试配置中设置的环境变量或其他属性,但未在最重要的配置中设置

  • The tests have a hidden order dependency that is not revealed during the normal test run 测试具有隐藏的顺序依赖性,在正常测试运行期间不会显示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM