AzureDevops PowerShell和任务

时间:2019-09-04 11:23:45

标签: powershell azure-devops

我目前有一个VSTS / AzureDevOps任务扩展,它由一个json文件和一个ps1脚本组成。 json文件基本上规定了输入,而ps1脚本确实起作用(它运行了一些测试。)我想扩展此任务以在管道中上传测试结果,AzureDevops方便使用了“发布测试结果”,但这就是YAML了。

有什么方法可以通过使用PowerShell获得与使用预制任务相同的功能吗?我看着类似this的东西,但找不到明显的东西。

我认为执行此操作的唯一其他方法是使用AzureDevops REST api?

1 个答案:

答案 0 :(得分:1)

我按照给出的示例here测试了artifact.upload。并发现它已将文件发布到工件,并且无法在构建Tests的{​​{1}}页中显示测试结果,如下图所示。 enter image description here

使用Summary在powershell中使用以下脚本进行了测试。

artifact.upload

任务日志如下:

echo "##vso[artifact.upload containerfolder=testresult;artifactname=uploadedresult;]$(Agent.BuildDirectory)\TestResult\WS-LEVIL-01_WS-LEVIL-01_2019-09-05_11_36_44.trx"

我试图使用纯Powershell来做到这一点,这似乎很艰辛。如果您只想将其发布到azure管道,并想要显示如上图所示的结果。您可以将xml文件保存到主机代理上的某个位置,然后使用Uploading 1 files File upload succeed. Upload 'C:\agent\_work\2\TestResult\WS-LEVIL-01_WS-LEVIL-01_2019-09-05_11_36_44.trx' to file container: '#/3389084/testresult' Associated artifact 209 with build 595 Async Command End: Upload Artifact 任务来执行xml测试结果。这似乎是一个更简单的解决方法。