使用Jacoco时,java覆盖率视图在Intellij中显示为0.0%
正如在Open JaCoCo report in Intellij IDEA中所讨论的,当我使用Jacoco(而不是本机IntelliJ跟踪)收集代码覆盖率统计数据时,覆盖率窗口中始终显示0.0%(即“否”覆盖率)
这是在我完成整个“分析->;显示覆盖率数据…”之后并选择了我生成的“jacoco.exec”文件
同一个“jacoco.exec”文件可以与其他工具(如jacoco本机报告生成任务)以及Sonar配合使用,并生成预期的覆盖率报告内容
此外,本地IntelliJ仪器也可以正常工作
有谁能告诉我,我是否必须采取一些必要的措施,才能让IntelliJ接受我的Jacoco保险
# 1 楼答案
我可能猜你正试图以TeamCity(jaCoCo)展示的方式看到测试覆盖率。 如果是,有一些简单的解决方法,可以检查所有遗漏的分支(只需一般统计访问了哪些分支以及访问了多少次):
这就是我的建议,伙计们
# 2 楼答案
“intellij idea”似乎无法显示创建的jacoco报告的正确覆盖价值。当它显示覆盖率为0.0而不是给出不支持的格式错误时,这确实是误导和不公平的
然而,作为替代方案,我们可以使用maven sonar插件的目标sonar:sonar将jacoco report(作为maven build的一部分创建)推送到sonar(qube)服务器
声纳。钥匙和声纳。分支属性值可以从sonarqube中创建的相应项目中检索
# 3 楼答案
在导入jacoco之前,通过IntelliJ构建源代码。exec可能会解决这个显示0%覆盖率的问题
# 4 楼答案
对我来说,解决方案是简单地将根包(在我的例子中是“de”,在你的例子中可能是“com”)添加到“要包含在覆盖率数据中的包和类”中。 现在我看到了合理的代码覆盖率。![enter image description here](https://i.stack.imgur.com/P6LsW.png)
# 5 楼答案
当您为测试类将类添加到PowerMockitoannotation
@PrepareForTest
时,相应的类将不会显示代码覆盖率