【发布时间】:2019-06-24 14:02:56
【问题描述】:
我为构建管道创建了一个任务组。其中一个步骤是“发布构建工件”,发布路径为$(Build.ArtifactStagingDirectory),“工件发布位置”为“Azure Pipelines/TFS”(另一个选项是“文件共享”。
一旦我的构建成功,我想“发布”。我创建了一组新的任务组来首先安装 NUnit 控制台运行程序,而不是安装 NUnit3 测试适配器(两个 powershell 脚本)。
我的下一步是运行“Visual Studio 测试平台安装程序”,之后我想运行我的所有测试以确保它们通过。在此步骤中,必需的参数之一是“搜索文件夹”。
如果我给它赋值$(System.DefaultWorkingDirectory),它就可以正常工作。但感觉我应该使用特定于构建而不是系统级别的变量。
有人可以澄清我应该使用什么吗?我是否认为系统级变量太低了,我应该使用更接近构建工件的东西?当我使用 Build.ArtifactStagingDirectory 时,它说找不到我的测试 dll 失败。
【问题讨论】:
-
测试是构建还是发布的一部分?
-
它们是我解决方案中的单元测试。我在构建和发布中都运行它。我面临的这个问题是在发布中。在构建中,我可以使用 $(Build.ArtifactStagingDirectory) 找到并执行它们
-
在发布管道中,您不能使用构建变量。 System.Default 有什么问题...?这是下载工件的文件夹。
-
所以如果有多个管道,它会根据设置“代理作业”时选择的工件知道使用哪个工件-->工件下载?
-
是的,没关系,每个管道中的变量值都会不同。
标签: unit-testing azure-devops nunit azure-pipelines