如何使用PowerShell&;从TFS 2017u2获取最新版本的代码覆盖率;RESTAPI 使用PuthSeam,我如何查询Team Foundation Server 2017更新2(Office)以从最新完成的门控签入()获得代码覆盖百分比度量?

如何使用PowerShell&;从TFS 2017u2获取最新版本的代码覆盖率;RESTAPI 使用PuthSeam,我如何查询Team Foundation Server 2017更新2(Office)以从最新完成的门控签入()获得代码覆盖百分比度量?,rest,api,powershell,tfs,Rest,Api,Powershell,Tfs,我还没有在MS参考文档中找到一个明确的API调用。在web界面中,我可以在给定已完成构建的仪表板中看到百分比值和下载整个VisualStudio覆盖率文件的链接。不过我不想要这个文件。我只想进行一个API调用,并获取给定定义的上一次成功构建的覆盖率百分比值。不幸的是,VSTS的REST API的文档现在已关闭,但这应该可以让您开始() 该端点处理与测试和代码覆盖率相关的所有内容 https://{instance}/DefaultCollection/{project}/_apis/test/c

我还没有在MS参考文档中找到一个明确的API调用。在web界面中,我可以在给定已完成构建的仪表板中看到百分比值和下载整个VisualStudio覆盖率文件的链接。不过我不想要这个文件。我只想进行一个API调用,并获取给定定义的上一次成功构建的覆盖率百分比值。

不幸的是,VSTS的REST API的文档现在已关闭,但这应该可以让您开始()

该端点处理与测试和代码覆盖率相关的所有内容

https://{instance}/DefaultCollection/{project}/_apis/test/codeCoverage?api-version={version}[&buildId={int}&flags={int}]
为以下内容提供值,然后运行此
调用RestMethod
以获取数据

$Instance = 'fabrikam-fiber-inc.visualstudio.com' #your URL here
$ProjectName = #YourProjectNameHere
$buildID = #YourBuildIDHere
$version = '2.0-preview'

Invoke-RestMethod -uri https://$Instance/DefaultCollection/$ProjectName/_apis/test/codeCoverage?api-version=$version
以下是您可以得到的回复示例:

Status code: 200
{
  "value": [
    {
      "configuration": {
        "id": 51,
        "flavor": "Debug",
        "platform": "Any CPU",
        "uri": "vstfs:///Build/Build/363",
        "project": {}
      },
      "state": "0",
      "lastError": "",
      "modules": [
        {
          "blockCount": 2,
          "blockData": "Aw==",
          "name": "fabrikamunittests.dll",
          "signature": "c27c5315-b4ec-3748-9751-2a20280c37d5",
          "signatureAge": 1,
          "statistics": {
            "blocksCovered": 2,
            "linesCovered": 4
          },
          "functions": []
        }
      ],
      "codeCoverageFileUrl": "..."
    }
  ],
  "count": 1
}

看起来blocksCovered和livesCovered可能是最接近API的。如果你需要帮助或遇到困难,请告诉我。最终,.

Wow@FoxDeploy——这是一个快速、准确的响应。非常感谢!如果我陷入困境,我会接受你的帮助。