Эта статья является отличным ресурсом, фактически она была единственной, которую я нашел доступной, когда искал что-то подобное.
В общем, вам нужен доступ к 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» в список ссылок.