我在构建定义中有一个 VsTest 任务,它会生成一个 .coverage 文件,可以使用"下载代码覆盖率结果"链接下载该文件。然后,我使用ReportGenerator从中创建HTML报告。效果很好。
现在我想添加一个脚本任务来在服务器上运行 ReportGenerator,但我无法弄清楚如何实际引用 .coverage 文件。每次运行都是不同的,路径如下:
"C:agent_work1sTestResults 195053f-05f0-40a5-bfae-a0215dd0af80WIN-JQJJSGM4KOU$_WIN-JQJJSGM4KOU 2018-04-13 06_50_42.coverage"
路径的第一部分似乎是$(Common.TestResultsDirectory)
,但0195053f-05f0-40a5-bfae-a0215dd0af80
是什么?可能是一个身份,但哪一个?
Microsoft有一个不错的构建变量页面,我稍后会详细研究,但希望有人已经弄清楚了这一点。
VSTS 生成没有内置变量来获取代码覆盖率结果,它会搜索文件。因此,您可以通过PowerShell搜索TestResults文件夹中的文件(每个文件后缀((例如Get-Childitem:使用Windows PowerShell搜索文件(,$(Build.SourcesDirectory)
变量的值为C:agent_work1s
。