3

.Status给定带有of的TFS 构建详细信息 (IBuildDetail),PartialSuccess我 该如何检索在该构建中失败的测试列表 (MSTest)?.TestStatusFailed

我有一个工作沙箱,我可以在其中通过 SDK 联系 TFS 并检索最新的 PartialSuccess 构建,但似乎无法找到哪个服务可能具有此单元测试数据以及如何查询它。

任何人都可以解释一下吗?

4

1 回答 1

5

这篇文章是一个很好的资源,实际上它是我在搜索类似内容时发现的唯一可用的资源。
一般来说,您需要访问ITestManagementService.
鉴于您已经与 ateamProjectCollection和 a建立了联系buildDetail,这样的事情应该适合您:

var tstService = (ITestManagementService)teamProjectCollection.GetService(typeof(ITestManagementService));
ITestManagementTeamProject testManagementTeamProject = tstService.GetTeamProject(buildDetail.TeamProject);

IEnumerable<ITestRun> testRuns =  testManagementTeamProject.TestRuns.ByBuild(buildDetail.Uri);

foreach (var testRun in testRuns)
{
    ITestCaseResultCollection testcases = testRun.QueryResultsByOutcome(TestOutcome.Failed);
    foreach (var testcase in testcases)
    {
        Console.WriteLine("TestCase ID: " + testcase.TestCaseId);
        Console.WriteLine("TestCase Title: " + testcase.TestCaseTitle);
        Console.WriteLine("Error Message: " + testcase.ErrorMessage);                  
    }
}

(此代码基本上是上面文章的副本,由Anuj Chaudhary工作)

请记住在您的参考列表中添加“Microsoft.TeamFoundation.TestManagement.Client”。

于 2012-01-05T10:05:54.650 回答