Azure devops 无法查看通过API添加的测试附件

Azure devops 无法查看通过API添加的测试附件,azure-devops,azure-devops-rest-api,Azure Devops,Azure Devops Rest Api,我的问题在微软开发者社区提前结束了,所以我希望(并祈祷)社区中的人能提出建议 每当我在Azure DevOps中打开测试结果时,它都不会加载链接到测试用例的完整附件列表。通常,在作为发布的一部分进行测试运行之后,我会手动将一些附件上载到各个测试用例。附件通常是.jpg和.mp4。.mp4的容量很少超过10mb 这是API测试附件获取请求 GET https://[organization]/[project]/_apis/test/Runs/1016852/Results/100000/atta

我的问题在微软开发者社区提前结束了,所以我希望(并祈祷)社区中的人能提出建议

每当我在Azure DevOps中打开测试结果时,它都不会加载链接到测试用例的完整附件列表。通常,在作为发布的一部分进行测试运行之后,我会手动将一些附件上载到各个测试用例。附件通常是.jpg和.mp4。.mp4的容量很少超过10mb

这是API测试附件获取请求

GET https://[organization]/[project]/_apis/test/Runs/1016852/Results/100000/attachments?api-version=5.1-preview.1
这是结果的屏幕截图

https://[organization]/[project]/_apis/test/Runs/1016852/Results/100000/Attachments/1111488

下面是一个由结果返回的附件示例

https://[organization]/[project]/_apis/test/Runs/1016852/Results/100000/Attachments/1111488
下面是一个在我的浏览器中运行链接下载附件的示例

如您所见,附件已成功下载并打开

现在,当我通过以下链接浏览Azure DevOps中的测试结果时(请注意,运行ID和结果ID与上面的相同)

我只看到2个附件,而不是10个

下面是我发布到附件端点的示例正文

{
  "stream": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhP7cxBCsAgDERR739pG/CnGJI0FopQ8O2cjNP6R85QbeNQU7wT1dkijaQ3vkZoWElaoTeJojW01cYh0jwfgiFBV/lEjOZtacijN/nLkOBHhIaVDgn+Wdycp6FXzlCl9wt0Y0cAzHo/zgAAAABJRU5ErkJggg==",
  "fileName": "imageAsFileAttachment.png",
  "comment": "Test attachment upload",
  "attachmentType": "GeneralAttachment"
}

这里可能有什么问题?

我根据您的描述进行了测试,但不幸的是,我无法重现您的问题。我使用RESTAPI上传了附件。附件可以在测试用例中正常显示,并与RESTAPI查询的附件数量相匹配

您可以在中检查设置的保留时间,以查看附件是否已自动删除。如果排除了这一点,Azure DevOps最近的可用性下降可能会影响这些服务,并且已经得到解决。您可以检查问题是否仍然存在


如果这个问题仍然存在,下面是一个类似问题的案例。在这种情况下,这个问题应该是一个bug并已修复,但这并不排除再次发生的可能性。您可以在中提交新记录单,并将问题报告为错误。

我的测试保留设置与您的匹配。即使可用性降级事件已得到解决,该问题仍然存在。这个问题已经在这里的开发者论坛上提出了,但是已经显示为关闭,尽管我已经提供了足够多的信息。出于某种原因,当我打开一个应该显示我所有附件的页面时,例如测试计划->运行,不会对附件进行额外的api调用。Microsoft需要找出原因。您可以尝试在新的项目或组织中进行测试,看看是否可以重现此问题。如果可以复制,我将帮助您在开发者论坛中创建一个新的标签,并将问题报告给产品组。:)请尝试使用一个失败的测试重复您的示例,该测试会自动附加“Standard_Console_Output.log”和“Standard_Error_log”文件。正是这些测试让我很难看到附件-‘attachments’api调用在浏览测试用例时没有进行。我在查看添加到已通过测试的附件时没有遇到任何问题,因为默认情况下,测试任务没有添加这些日志附件。我相信无论是否使用这些日志附件,它都应该可以工作,但如果您知道如何禁用它们,请告诉我。这样您就知道我可以在完全不同的组织和项目中复制它。我也可以使用不同的测试运行程序进行复制。如上所述,创建一个已附加日志的失败测试用例-“Standard_Console_Output.log”和/或“Standard_Error_log.log”(例如,如果使用MsTest,请将一些Console.WriteLine语句添加到失败的测试中)。然后在azure devops中浏览完成的测试用例。即使在调用get test attachments api时返回了所有附件,也不会调用“attachments”api。我尝试了一个失败的测试,但这两个日志文件不会自动返回。您可以检查任务设置,查看是否设置了上载附件