【问题标题】:Run random test cases on TFS在 TFS 上运行随机测试用例
【发布时间】:2018-10-14 07:12:50
【问题描述】:

我有每天从 TFS 运行的计划回归自动化,我想开发功能以仅针对最新版本运行失败的测试用例,而不是再次运行整个回归自动化。

有没有办法,我只能调用 web api 并且只传递失败的测试用例名称,当我触发部署到任何只会运行的环境时

或者有没有其他方法可以解决这个问题。

【问题讨论】:

  • TFS 最近引入了“运行受影响的测试”。这将运行代码覆盖率数据已更改的测试以及最近失败或不稳定的测试。
  • @jessehouwing 我想再次运行失败的测试用例。不仅影响测试。

标签: asp.net selenium tfs automation nunit


【解决方案1】:

在构建定义的the v2.* of the VSTest task中已经有一个Rerun failed tests选项,你可以选择这个选项来重新运行失败的测试:

如果您想使用api,您需要按照以下步骤操作:

  1. Get test results for a test run 找出失败的测试用例。

GET https://{accountName}.visualstudio.com/{project}/_apis/test/Runs/{runId}/results?api-version=5.0-preview.5

  1. Create a new test suite 通过查询失败的测试用例 ID:

POST https://{accountName}.visualstudio.com/{project}/_apis/test/Plans/{planId}/suites/{suiteId}?api-version=5.0-preview.3

Content-Type:application/json

{ "suiteType": "DynamicTestSuite", "name": "FailedTestCases", "queryString": "SELECT [System.Id],[System.WorkItemType],[System.Title],[Microsoft.VSTS.Common.Priority],[System.AssignedTo],[System.AreaPath] FROM WorkItems WHERE [System.TeamProject] = @project AND [System.WorkItemType] IN GROUP 'Microsoft.TestCaseCategory' AND ( [System.Id] = xxx OR [System.Id] = xxx )" }

  1. 在您的 VSTest 任务中选择测试计划和测试套件:

【讨论】:

  • 我正在使用 DLL 运行自动化测试用例,我在 TFS 中没有任何测试用例,我将如何获取测试用例 ID 并创建测试计划??
  • 既然你在TFS里没有测试用例,你想怎么用TFS来运行自动测试呢?在我的步骤 1 中,它将返回测试用例 ID,关于如何创建测试计划,您可以参考此链接:docs.microsoft.com/en-us/vsts/manual-test/getting-started/…
猜你喜欢
  • 1970-01-01
  • 2016-08-23
  • 2010-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多