SonarQube:新代码覆盖率从未计算

6
我已经设置了SonarQube、Maven和Cobertura,以便在每次构建运行时上传单元测试覆盖率。我想使用差异视图来获取增量代码的覆盖率。
覆盖率本身已经成功上传,我可以看到代码行的增量。然而,我无法让“新代码覆盖率”正常工作。
我尝试了不同的泄漏期值,包括previous_analysis和previous_version(将版本从1.0更改为新分析中的1.1)。我还使用了-Dsonar.projectDate来模拟过去的分析日期,但仍然没有成功。
有什么想法吗?

enter image description here

3个回答

7
获取与 new_code 相关的信息/度量的关键要求是利用 SonarQube SCM 集成。而要从中受益,您必须安装一个适用于您的项目的兼容 SCM 插件(例如 Git 插件SVN 插件 等)。

这是我想的,但我想先“手动”创建一个最小可行产品。所以你的意思是我不能通过手动从命令行上传来使用new_code吗? - MisterStrickland
1
我不明白你的问题。我想说的是,你应该安装Git插件(或者根据你使用的SCM选择其他插件),并验证在你的项目设置中启用了SCM集成。这是因为“新代码”是基于SCM“blame”信息检测出来的。 - Nicolas B.
我安装了Jazz RTC插件,但在SonarQube中看到的结果完全相同 - 我可以看到新的代码行,但没有新的覆盖率 :( - MisterStrickland
有趣的是,它与Git一起工作。我会接受您的答案并发送一个单独的问题来探讨其他事项。谢谢@Nicolas - MisterStrickland
我已经将 sonar-scm-git-plugin-1.2.jar 添加到 sonarqube-6.2/extensions/plugins/,因为我正在使用 Git 进行 scm。然而,没有任何变化。这样就足够了吗? - bsky

1

请考虑将您链接中的相关信息添加到答案中提供的空间中。Sorry, there is no content provided to be translated. Please provide the content to be translated. - sao

1
只有在使用/激活源代码管理支持(SVN,Git等)时,“新代码覆盖率”才会显示。

sonar.scm.disabled=false


1
什么是它?它有什么作用,为什么我们应该禁用它? - Weijing Jay Lin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接