如何使用TFS Rest API获取unit testing结果?

如何使用Rest API检索TFS中构建的unit testing结果?

构建定义使用VNext(Visual Studio 2015 Update 3)。

var vssConnection = new VssConnection(_configurationSpec.TeamProjectCollection, new VssClientCredentials()); _buildClient = vssConnection.GetClient(); 

构建的测试结果存储在测试运行中,因此您需要首先获取构建的测试运行,然后从测试运行中检索测试结果。 以下是代码示例:

 class Program { static void Main(string[] args) { string ur = "https://xxxxxxx/"; TfsTeamProjectCollection ttpc = new TfsTeamProjectCollection(new Uri(ur)); //Get build information BuildHttpClient bhc = ttpc.GetClient(); string projectname = "Project"; int buildId = 1; Build bui = bhc.GetBuildAsync(projectname,buildId).Result; //Get test run for the build TestManagementHttpClient ithc = ttpc.GetClient(); Console.WriteLine(bui.BuildNumber); QueryModel qm = new QueryModel("Select * From TestRun Where BuildNumber Contains '" + bui.BuildNumber + "'"); List testruns = ithc.GetTestRunsByQueryAsync(qm,projectname).Result; foreach (TestRun testrun in testruns) { List testresults = ithc.GetTestResultsAsync(projectname, testrun.Id).Result; foreach (TestCaseResult tcr in testresults) { Console.WriteLine(tcr.TestCase.Name); Console.WriteLine(tcr.Outcome); } Console.ReadLine(); } Console.ReadLine(); } } 

您可以尝试在powershell脚本中使用此Rest API来获取相关步骤的日志。

 GET https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/Fabrikam-Fiber-Git/_apis/build/builds/391/logs?api-version=2.0 

它将返回logs1,logs2对应step1,step2。

 { "count": 4, "value": [ { "lineCount": 3, "createdOn": "2015-07-16T19:53:19.747Z", "lastChangedOn": "2015-07-16T19:53:19.92Z", "id": 1, "type": "Container", "url": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/6ce954b1-ce1f-45d1-b94d-e6bf2464ba2c/_apis/build/builds/391/logs/1" }, { "lineCount": 113, "createdOn": "2015-07-16T19:53:29.387Z", "lastChangedOn": "2015-07-16T19:53:29.44Z", "id": 2, "type": "Container", "url": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/6ce954b1-ce1f-45d1-b94d-e6bf2464ba2c/_apis/build/builds/391/logs/2" }, 

例如:

只需要获取第4步“ 测试assembly…… ”的日志 在此处输入图像描述

Interesting Posts