This文章是一个很好的资源,实际上它是我在搜索类似内容时找到的唯一一个。
一般而言,您需要访问ITestManagementService
。
鉴于你已经连接到teamProjectCollection
和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”。
不得不添加更多的程序集引用,但这确实是答案。谢谢! – el2iot2 2012-01-05 23:32:54
我很高兴它为你工作! – pantelif 2012-01-06 08:29:33