c# - 在 C# 应用程序中从 Azure DevOps 获取构建测试结果

标签 c# azure-devops automated-tests azure-pipelines tfsbuild

我正在 ASP .NET Core 中制作一个程序,我正在尝试为特定构建定义中的特定构建获取测试运行。到目前为止,我已经创建了一些方法,可以获取构建定义和特定构建的通宵构建。现在我想从提到的夜间构建中获得所有测试结果

enter image description here

想法是获取所有测试的列表并对它们进行一些统计。我正在使用以下库

using Microsoft.TeamFoundation.Build.WebApi;
using Microsoft.TeamFoundation.Core.WebApi;
using Microsoft.TeamFoundation.TestManagement.WebApi;

我现在没有使用任何 RestAPI 查询。只有提到的库中的这些预先设计的方法(我知道他们在后台使用 Rest 服务),我希望我能以某种方式设法用这些方法来做到这一点。有办法吗?

感谢您提供可能的解决方案

最佳答案

它看起来像 GetTestResultsByBuildAsync method of the TestManagementHttpClient class是你要找的。它返回 ShallowTestCaseResult 实例的列表。它包含有关每个测试运行的非常基本的信息,但您可以使用该列表中每个实体的 Id 并将其提供给 GetTestResultByIdAsync method ,返回有关测试结果的完整信息。

如果有很多结果,您可能希望逐页获取它们。在这种情况下,使用 the GetTestResultsByBuildAsync2 method (注意方法名称末尾的 2)。它返回分页列表集合,其中包含 ContinuationToken 属性。

当您请求第一个 Top 结果时,该属性将保存继续标记,以防有更多结果要返回。您应该将该 token 提供给后续调用。重复该操作,直到生成的集合中的继续标记为 null。

关于c# - 在 C# 应用程序中从 Azure DevOps 获取构建测试结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69496910/

相关文章:

javascript - 如何从 Cypress 返回 Map 对象?

javascript - 检查页面加载是否使用 Response.Redirect 重定向页面

c# - 对于已知情况是否应该避免 try catch

c# - 在 C# 中使用 WebClient.DownloadString 发送 POST

c# - 使用继承创建 Xml 文档

azure-devops - 重新组织 VSTS 查询中的图表

azure-devops - 如何在 AzureDevOps Pipeline VSTest@2 中定义多个匹配模式?

azure - 为 Azure 部署管道中的暂存槽添加启动和停止任务

c# - 如果在 'Passed' 阶段失败,为什么测试标记为 "pre-test"?

java - 仅运行特定功能,首先开始一些测试