【问题标题】:How can I get the last test run id from TFS to my powershell script如何从 TFS 获取最后一个测试运行 ID 到我的 powershell 脚本
【发布时间】:2017-05-16 10:25:47
【问题描述】:

我想使用最后一个 TestRunId,以防通过 powershell 创建报告,将信息发送到 Slack。我使用 Team Services REST API 来获取测试结果。它工作正常,但只能使用特定的运行 ID。这是一个链接,您可以在其中找到很好的示例:enter link description here
我一直在寻找一种方法来获取我将在对 TFS REST API 的 GET 请求中使用的最后一个测试结果 ID:

Invoke-RestMethod -Uri "https://{instance}/DefaultCollection/{project}/_apis/test/runs/{run}/results?api-version={version}[&detailsToInclude={string}&$skip={int}&$top={int}]"

所以我发现 {run} 是最后一个没有运气的测试运行 ID。

有人有想法吗?我在 powershell 脚本中找不到任何可以在这种情况下使用的查询语言。

【问题讨论】:

  • 你能得到Runs API的ID吗?
  • 是的,当然,Luca Cappa 的回答是完美的!

标签: rest api powershell tfs azure-devops


【解决方案1】:

您可以检索测试运行的列表,按 ID 对结果进行降序排序,因为最近的测试运行具有最大的 ID。然后得到结果的第一项。所有这些都显示在 powershell 中:

$username = "doesnotmatter" 
$token = "PUTYOURTOKEN_HERE" 
$instance = "PUTYOURACCOUNTHERE.visualstudio.com" 
$teamProjectName = "PUTHEREYOUR_TEAM_PROJECT_NAME"

#create auth header to use for REST calls 
$accessToken = ("{0}:{1}" -f $username,$token) 
$accessToken = [System.Text.Encoding]::UTF8.GetBytes($accessToken) 
$accessToken = [System.Convert]::ToBase64String($accessToken) 
$headers = @{Authorization=("Basic {0}" -f $accessToken)} 

$testRuns = Invoke-RestMethod -Uri "https://$instance/defaultcollection/$(teamProjectName)/_apis/test/runs/?api-version=3.0-preview" -Headers $headers -Method Get 

$testRunsIdSorted = $testRuns.value | sort-object id -Descending

$mostRecentTestRun = Invoke-RestMethod -Uri "https://$instance/defaultcollection/$(teamProjectName)/_apis/test/runs/$($testRunsIdSorted[0].id)?api-version=3.0-preview" -Headers $headers -Method Get 

$mostRecentTestRun 现在是最新的测试运行。 请注意,该脚本根本不进行错误检查。 请注意,对于身份验证,脚本使用的 Personal Access Token 至少需要具有 Test management (read) 范围。

【讨论】:

  • 非常感谢您的精彩回答!我没有找到任何关于 TFS API 的文档,您提供的信息在哪里:用于请求测试结果的 Uri 可以在没有具体 RunID 的情况下使用并给出 ba :)
猜你喜欢
  • 1970-01-01
  • 2017-09-15
  • 2019-10-27
  • 2014-03-25
  • 1970-01-01
  • 2019-11-18
  • 1970-01-01
  • 2018-02-05
  • 1970-01-01
相关资源
最近更新 更多