首页 > 解决方案 > 通过 Rest Api 将值插入 Azure DevOps 自定义字段

问题描述

我在 Azure DevOps 中为测试计划添加了一些自定义字段。但是,当我尝试通过 Rest API 调用创建新的测试计划时,它只是创建了一个填充了默认字段的测试计划,而自定义字段保持空白。

我尝试同时使用字段名称(如Team Name)和字段引用名称(如custom.TeamName),但无济于事。甚至Get也没有公开自定义字段。自定义字段是否需要一些额外的配置,还是与代码相关的问题?

详细信息:我在组织下创建了一个继承流程,然后在流程->测试计划下我在测试计划中创建了新字段,如屏幕截图所示:

一个这样的自定义字段的快照

我尝试使用以下代码将测试计划创建为工作项,并使用额外字段成功创建它。但由于我无法独立创建测试套件,它的行为不正常。

我创建了一个JsonPatchDocument并添加了所有字段(在此处仅添加一个),如下面的代码:

JsonPatchDocument patchDocument= new JsonPatchDocument();

patchDocument.Add(
{
Operation=Operation.Add,
Path="/fields/System.TeamName",
Value="Xander"
}
);

VssConnection connection=new VssConnection(uri,credential);
WorkItemTrackingHttpClient workItemTrackingHttpClient= connection.GetClient<WorkItemTrackingHTTPClient>();
WorkItem res=workItemTrackingHTTPClient.CreateWorkItemAsync(patchDocument,project,"Test Plan").Result;

它正在创建测试计划,但不是测试套件。所以它的行为很奇怪。请检查这个。

标签: azure-devopsazure-devops-rest-api

解决方案


通过 Rest Api 将值插入 Azure DevOps 自定义字段

我可以使用 REST API测试计划 - 创建来重现此问题。

我认为这应该与 REST API 有关,因为即使我使用 REST API Test Plans - Get来获取自定义字段,但请求正文不包含自定义字段。

由于我们无法获取自定义字段,因此我们无法将 POST 或 PATCH 用于自定义字段。

您可以在我们的 UserVoice 网站 ( https://developercommunity.visualstudio.com/content/idea/post.html?space=21 )上添加此功能的请求,这是我们产品建议的主要论坛。感谢您帮助我们构建更好的 Azure DevOps。

在此处输入图像描述


推荐阅读