使用rest api检查声纳项目的代码覆盖率

问题描述 投票:0回答:1

声纳版本:5.3

我打这个电话

https://mysonar/api/resources/index?metrics=coverage&key=test-project

但是,我没有从这个电话中获得测试项目的报道。但我正在接受其他项目和他们的报道。当我这样做的时候

https://sonaraws.kdc.capitalone.com/api/resources/index

我能够看到关于api响应的测试项目。

如何深入查看特定项目,而不是从其他对Sonar的调用中检查其他项目。

sonarqube sonarqube-scan
1个回答
0
投票

api/resources不支持key参数。您必须使用qualifiersresource参数指定项目ID。

这应该适合你:

https://mysonar/api/resources/index?metrics=coverage&qualifiers=TRK&resource=test-project

qualifiers参数的可用值:

  • 大众:观点
  • SVW:子视图
  • TRK:项目
  • BRC:模块
  • 悉尼科技大学:单元测试
  • DIR:目录
  • IN:文件
  • DEV:开发者

0
投票

我使用下面的api获取覆盖率。 Sonarqube版本 - 6.7.5

使用下面列出的第一个api获取项目的componentId。

https://sonarurl/api/components/show?key=ProjectKey

https://sonarurl/api/measures/component?componentId=Ahvhjvds87373&metricKeys=coverage

响应

{
    "component": {
        "id": "Ahvhjvds87373",
        "key": "ProjectKey",
        "name": "ProjectName",
        "qualifier": "TRK",
        "measures": [{
            "metric": "coverage",
            "value": "79.3",
            "periods": [{
                "index": 1,
                "value": "0.0"
            }]
        }]
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.