如何以编程方式在VSTS中创建测试用例?

问题描述 投票:0回答:3

我有一个使用 jasmine 框架编写的客户端(角度)应用程序的单元测试项目。

在 C# 单元测试项目中,可以将每个测试方法与 Visual Studio 测试资源管理器中的测试用例链接起来。

由于使用 jasmine 框架编写的客户端(角度)应用程序的单元测试项目中的测试方法/套件不可能实现相同的目标,因此我正在考虑创建一个工具来通过编程在 VSTS 中创建测试用例的可能性。并将每个客户端单元测试方法映射到 VSTS 中的测试用例。

任何人都可以帮助我了解 API 并了解如何做到这一点吗?

unit-testing visual-studio-2017 azure-devops azure-devops-rest-api
3个回答
2
投票

用于测试管理的 REST API 非常广泛,并且在 VSTS 文档网站上有清晰的记录。

API 分为两部分:

  1. 测试管理 API,用于创建测试计划和测试套件并将项目链接在一起。
  2. 用于创建和更新测试用例的工作项 API(本质上只是一个工作项)。

2
投票

使用 REST API 来做到这一点:

补丁

https://[account].visualstudio.com/DefaultCollection/_apis/wit/workitems/[testcaseid]?api-version=1.0

内容类型:

application/json-patch+json

身体:

[
  {
    "op": "add",
    "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestName",
    "value": "[namespace.classname.methodname (e.g. UnitTestProject1.UnitTest1.TestMethod2)]"
  },
  {
    "op": "add",
    "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestStorage",
    "value": "[assembly name(e.g. unittestproject1.dll)"
  },
  {
    "op": "add",
    "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestId",
    "value": "[guid id]"
  },
  {
    "op": "add",
    "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestType",
    "value": "Unit Test"
  },
   {
    "op": "add",
    "path": "/fields/Microsoft.VSTS.TCM.AutomationStatus",
    "value": "Automated"
  }
]

AutomatedTestId 是一个 Guid 值,因此您可以使用以下 C# 代码生成新的 Guid:

Guid g = Guid.NewGuid();
string s = g.ToString();

参考如何将测试方法关联到测试用例?


0
投票

此时,我不需要@Choub890 提到的最后一点。没有它它也能工作(现在)。

我使用 Postman 作为检查,并且需要使用基本身份验证,以及来自 ADO 的个人访问令牌,就在密码字段中。不需要用户名

© www.soinside.com 2019 - 2024. All rights reserved.