我使用最新的sonarqube来分析一个java项目。在这个项目中,我有一个简单的Range类,有2个长属性 - 开始和结束。在查看班级的覆盖数据时,我看到了:
基本上它意味着我有114个不同的测试通过这个构造函数。我也有测试验证那里的每一个断言(所以一个负面开始的测试,另一个带负面的测试,三个带有开始的结束等)。
然而,sonarqube认为有无法覆盖的分支。assert start >= 0
中的4个分支是什么?
答案 0 :(得分:2)
您的问题与SonarQube无关,因为SonarQube只会读取并处理您的代码覆盖率工具生成的报告。如果您查看字节代码,“assert”关键字可能会生成一些额外的代码,因此会产生一些额外的分支。如果您的覆盖工具是JaCoCo,请参阅https://groups.google.com/forum/#!topic/jacoco/kjhbX_ExrAA,例如。