新的代码覆盖率指标未从SonarQube 5.3 API返回值

Roh*_*han 0 sonarqube sonarqube-5.0 sonarqube5.3 sonarqube-web

我需要通过api获取新的代码更改的单元测试覆盖率数据.指标.我可以在SonarQubeDashboard中看到数据,但是api没有返回指标的任何值,例如:

  1. new_coverage
  2. new_line_coverage(等)

我正在调用api:

HTTPS:/// API /资源格式= JSON和指标= ncloc,line_coverage,new_line_coverage

即使是公共Nemo实例也不会返回这些指标值:

https://nemo.sonarqube.org/api/resources?format=json&metrics=ncloc,line_coverage,new_line_coverage,new_coverage

上面的API只返回每个项目的ncloc和line_coverage.

请不要告诉我检查这些指标是否在版本中不可用.如果您调用API,它们是:

https://nemo.sonarqube.org/api/metrics/search

Nic*_*eam 5

现代方式(api /措施/组件)

SonarQube的api/resourcesWeb API 已被弃用,您应该使用它api/measures/component(从5.4开始).

使用这个项目为例:

https://nemo.sonarqube.org/api/measures/component?componentKey=org.sonarsource.php%3Aphp&metricKeys=ncloc,line_coverage,new_line_coverage,new_coverage&additionalFields=metrics,periods

旧的方式(api /资源)

如果你真的坚持要api/resources(如旧SonarQube版本),那么请记住,对于的指标有时间差的概念(自何时?),所以你必须添加includetrends=true到您的请求.让我们用你的例子来做:

https://nemo.sonarqube.org/api/resources?format=json&metrics=ncloc,line_coverage,new_line_coverage,new_coverage&includetrends=true

这给了你new_coveragenew_line_coverage(对于确实具有覆盖范围和供应链管理的信息可用的项目).