【发布时间】:2021-02-21 18:30:33
【问题描述】:
我的 Azure DevOps 分支设置了代码覆盖率策略,因此 PR 必须包含 80% 的差异覆盖率(即覆盖 80% 的修改行)。我正在尝试通过 REST API 提取差异覆盖政策是否通过。
我尝试使用GET https://dev.azure.com/{organization}/{project}/_apis/policy/evaluations?artifactId=vstfs:///CodeReview/CodeReviewId/{projectId}/{pullRequestId}&api-version=6.1-preview.1,但在回复中,the status of the codecoverage policy is "queued".
我相信这与我在 PR 的 Checks 部分中看到两个代码覆盖率检查有关: one check says myrepo/codecoverage is is "Waiting" status, and another says "Coverage status check succeeded for myrepo"
上面的 API 正在返回等待代码覆盖检查,但不是成功的。这是因为代码覆盖被认为是外部服务吗?如果是这样,我怎样才能得到结果?
我可以使用此 API 获得完整的代码覆盖率:https://dev.azure.com/{organization}/{project}/_apis/test/codecoverage?buildId={buildId}&flags=7&api-version=6.1-preview.1,但我再次寻找差异覆盖率。
还是分支策略设置有问题,导致代码覆盖率检查没有自行更新,而是离开等待检查并产生单独的检查?谢谢。
【问题讨论】:
标签: azure-devops code-coverage pull-request azure-devops-rest-api