IntelliJ显示更改了单元测试未涵盖的行

Jes*_*sen 8 code-coverage intellij-idea

在我的日常工作中,我打算为我改变的代码编写测试.

我的工作流程通常是这样的:

  • 找到要更改的代码
  • 写失败的测试
  • 改变代码
  • 观看测试通行证

在提交之前,我运行所有测试.

但实际上,我可以在不知不觉中改变我们的测试覆盖范围.

我现在要做的通常是看CI服务器是否会显示越来越多的测试覆盖率.但这是我在提交后必须完成的手动任务,并且其他人提交代码也可能会混乱.

IntelliJ如何帮助我?我无法直接找到比较测试覆盖率的方法.如何确保我的更改推动测试覆盖率?

您目前如何处理代码覆盖的这一方面?

jav*_*nna 13

IntelliJ IDEA包括自6.0版本(Ultimate版本)以来的代码覆盖率支持.

通过运行 - >编辑配置 - >代码覆盖率,您可以配置所需的代码覆盖率,然后您可以发出"运行测试覆盖率"命令.因此,您将在项目视图中获得一些代码覆盖率数据.打开源文件时,您还可以查看完全覆盖,部分覆盖或未覆盖的行.

您可能希望通过文件 - >设置 - >编辑器 - >颜色和字体 - >常规自定义颜色和字体,修改以下条目:

  • 全线覆盖
  • 部分线路覆盖
  • 裸露的线条

例如,我想为覆盖范围添加更多的证据,因此我为这些行配置了不同的背景.

一旦你有一些红线(没有覆盖),你可以尝试覆盖它们,如果你看到它们变绿,这意味着你做得很好,等等!

  • 感谢您的回答。我知道IntelliJ可以显示覆盖率,但问题是:我该如何“比较以前运行的测试覆盖率”?换句话说,我想在我的项目中看到覆盖率的增加。例如,我想知道一个包裹的覆盖率从38%上升到40%。您的建议就像我今天使用IntelliJ:它向我显示了覆盖的行,并且在添加测试之后,我手动查看代码的特定部分是否被覆盖。它本身功能强大,但我想要更多:) (2认同)