【发布时间】:2019-06-13 17:57:34
【问题描述】:
我有一个现有的测试结果,如果可能,我想更新测试结果的“已测试构建”字段。我查看了 REST API 文档 (https://docs.microsoft.com/en-us/rest/api/azure/devops/test/results/update?view=azure-devops-rest-5.0),我认为我已经正确调用了 PATCH 方法,但是当返回 200 时,UI 中的测试结果不会因“不可用”而改变。
有没有办法改变这个字段还是只读的?
PATCH https://dev.azure.com/{org}/{project}/_apis/test/Runs/{runId}/results?api-version=5.0
Auth: PAT for user who has Test Plans license
JSON request body:
[
{
"id": "100000",
"build": {
"id": "206",
"name": {buildDefinitonName},
"url": "https://dev.azure.com/{org}/{projectguid}/_apis/build/Builds/206"
}
}
]
JSON response body:
{
"count": 1,
"value": [
{
"id": 100000,
"project": {},
"lastUpdatedDate": "2019-06-13T17:18:56.073Z",
"priority": 0,
"url": "",
"lastUpdatedBy": {
"displayName": null,
"id": null
}
}
]
}
我也尝试过使用 .NET SDK,但没有成功:
...
var build = await buildClient.GetBuildAsync(projectGuid, 206);
var testResult = await testClient.GetTestResultByIdAsync(projectGuid, {runId}, 100000);
testResult.Build = new Microsoft.TeamFoundation.TestManagement.WebApi.ShallowReference
{
Id = build.Id.ToString(),
Name = build.Definition.Name,
Url = build.Url
};
TestCaseResult[] results = new TestCaseResult[] { testResult };
var outcome = await testClient.UpdateTestResultsAsync(results, teamProject, {runId});
(结果显示 Build = null)
【问题讨论】:
-
我的回答现在能解决你的困惑吗?随时让我们知道最新状态:-)
标签: c# azure-devops azure-devops-rest-api