首页 > 解决方案 > 在 C# 应用程序中从 Azure DevOps 获取构建测试结果

问题描述

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

在此处输入图像描述

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

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

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

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

标签: c#azure-devopsautomated-testsazure-pipelinestfsbuild

解决方案


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

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

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


推荐阅读