代码覆盖率结果未通过 sonarqube 中的 Branching 进行更新

Code coverage results not getting updated with Branching in sonarqube

我正在努力将 sonarqube 集成到 Jenkins 管道中。根据下面的文档,我使用 sonar-csharp 使用 opencover 在 sonarqube 上启用了代码覆盖 https://docs.sonarqube.org/pages/viewpage.action?pageId=6389770 我也在使用分支插件。 当我使用 /d:sonar.branch.name 和 /d:sonar.branch.target 启动 sonarqube 分析命令时,主分支上的覆盖率结果保持在 0%,而特定分支上的覆盖率结果保持空白。当我删除 /d:sonar.branch.name 和 /d:sonar.branch.target 时,master 上的覆盖率结果更新为特定值,但代码选项卡中特定分支上的覆盖率结果仍然为空.代码覆盖率百分比不应该在特定分支中相应地更新吗?为什么我看到使用分支插件的这种行为差异。如果我遗漏了什么,请告诉我。以下是我使用的工具版本

SonarQube 服务器 6.7.2 声纳-C# 6.8.2.4717 Opencover - 4.6.519

我已经用 opencover 和 visual studio 覆盖率测试了行为。 我试图通过在 sonarqube 分析期间启用详细日志记录来检查是否有任何错误,我确实看到覆盖率报告是由 sonarqube 导入和分析的,但结果未显示在网页中。以下是我在成功和失败场景中看到的内容

信息:传感器 C# 测试覆盖率报告导入 [csharp] 信息:正在解析 OpenCover 报告 C:\agent\workspace\xxxx\xxxx\opencovertests.xml 信息:将此代码覆盖率报告添加到缓存中供以后重用:C:\agent\workspace\xxxxx\xxxx\opencovertests.xml 信息:传感器 C# 测试覆盖率报告导入 [csharp](完成)|时间=183ms 信息:传感器零覆盖传感器 信息:传感器零覆盖传感器(完成)|时间=95ms C:\agent\workspace\xxxx\xxxx.sonarqube\out.sonar\scanner-report生成分析报告 分析报告上传时间 873ms 信息:分析成功

Blank Coverage

此致, 奇兰斯

你们分店的名字是什么?如果这个名称不匹配对应于 Long-Lived branches (sonar.branch.longLivedBranches.regex) 的正则表达式,那么看不到覆盖率数据是正常的。截至目前,只能在 SonarQube 的 Master 和 Long-Live 分支上提供覆盖数据,而不能在短期分支上提供。

此致

此功能似乎已添加到 v7.4 https://community.sonarsource.com/t/sonarqube-7-4-released/3792. Background is https://jira.sonarsource.com/browse/MMF-1118