通过 API 从 TFS 检索数据驱动测试的结果
Posted
技术标签:
【中文标题】通过 API 从 TFS 检索数据驱动测试的结果【英文标题】:Retrieving results of Data Driven Tests from TFS via the API 【发布时间】:2014-06-29 06:15:31 【问题描述】:我有一些数据驱动的单元测试,基本上按照这里的描述完成:
http://msdn.microsoft.com/en-us/library/ms182527.aspx
对于给定的测试运行,我可以通过以下方式获得结果:
IOrderedEnumerable<ITestCaseResult> runDetails = WebApiApplication.TeamProject.TestRuns.Find(testRunId).QueryResults().OrderBy(r=>r.Outcome);
在每个 ITestCaseResult 中,我可以通过以下方式获取错误消息:
testCaseResult.ErrorMessage
很好,但是当有数据驱动测试的结果时,我不知道如何获得迭代结果。它们出现在生成的 .trx 文件中,但不在 ITestCaseResult 中的任何位置。
关于如何通过 API 获取它们的任何想法?
【问题讨论】:
这可能会有所帮助,尽管我不敢相信这有那么难:***.com/questions/11436780/… 根据这篇已有 4 年历史的帖子,它只能通过 VS2010 中的 .trx 文件获得。我不敢相信这从来没有解决过!我可能必须解析一个 75 兆的 .trx 文件才能将其取出……啊啊!! 【参考方案1】:您需要告诉 TFS 将每个测试方法连接到哪个测试用例。如果您首先有一个测试用例,这很容易,因为您只需在 VS 中打开测试用例并在自动化选项卡上分配方法。
如果您首先拥有自动化,并且想要连接 300 个集成测试,这也很容易,只需使用“tcm 导入”工具来生成和同步所需的测试用例和测试方法。
自 MTM 首次引入以来就提供此功能。
【讨论】:
我问的是数据驱动测试,例如msdn.microsoft.com/en-us/library/… 并不太明白这个实用程序在这方面有什么帮助。以上是关于通过 API 从 TFS 检索数据驱动测试的结果的主要内容,如果未能解决你的问题,请参考以下文章
TFS 构建通过 REST API 和 PowerShell 发布测试结果 TRX
如何通过 C# 中的 Release ID 从 TFS 获取测试结果
如何从 tfs build 的测试结果中排除有序测试的名称?