运行Web应用程序时,代码覆盖率为IntelliJ显示0%

时间:2013-12-05 21:05:28

标签: java intellij-idea code-coverage

我有一个我在IntelliJ中运行的Web服务器应用程序。我想运行具有代码覆盖率的服务器,然后执行将发出请求的外部测试工具,并查看这些请求执行了多少代码。

我可以在IDE中运行单元测试时生成正确的代码覆盖率,但是当我运行代码覆盖率并使用外部线束执行时,我得到全部0代码覆盖率。

如果我在调试器中运行Web应用程序,它会按预期触发断点,所以我知道代码正在执行。

请帮忙!

4 个答案:

答案 0 :(得分:5)

我有同样的问题。单击“停止”以结束该过程会导致所有0%的覆盖率,可能是由于该过程没有机会整理并生成结果:

  

停止单击此按钮可通过标准机制从外部终止当前进程。

单击“退出”可以使覆盖率正确生成:

  

退出单击此按钮可使用进程内部机制正常终止当前进程。

有关详情,请参阅此处:https://www.jetbrains.com/idea/webhelp/test-runner-tab.html#

答案 1 :(得分:3)

这个解决方案对我有用:

转到IntelliJ工具栏 - >查看 - > ToolWindows - >覆盖。 窗口将出现在右侧。在这里,您可以通过选择它们来删除列表中的类,然后点击左下角的红色X.

screenshot of menu

答案 2 :(得分:1)

你的IDEA有0%的报道吗?

也许您正在查看每个班级的报道。尝试使用这个小按钮将其关闭:

enter image description here

编辑:

此按钮应显示/切换每次测试的覆盖范围。它只会在您使用“覆盖”运行测试时出现,并且它位于“运行”面板的工具栏上(Alt + 4)。

答案 3 :(得分:-1)

这是对Maurits给出的答案的补充,就像将添加覆盖范围窗口的另一幅图像一样。您只需单击“ X”红色标记以关闭左侧的覆盖线。

enter image description here