4

我的 TeamCity 构建中有一个 MSTest 构建步骤。一些测试正在寻找他们无法找到的相对路径中的文件,并且测试正在抛出错误......

找不到路径...

'C:\BuildAgent\temp\buildTmp\SYSTEM_[代理名称] 2013-02-06 16_25_11\Documents\json.value.list.txt'

我有一个 PowerShell 脚本,我想用它来创建文件并将其复制到上述路径。但是,我似乎无法弄清楚用于构建路径的适当 TeamCity 参数......

我有...

%system.teamcity.build.tempDir%\%teamcity.agent.name%\documents

然而,这给了我...

'C:\BuildAgent\temp\buildTmp[代理名称]\Documents\'

我可以使用哪些参数或 TeamCity 变量来构造...

C:\BuildAgent\temp\buildTmp\SYSTEM_[代理名称] 2013-02-06 16_25_11\Documents

谢谢!

4

1 回答 1

1

如果您的测试正在读取文件的内容,这将确保正确解析相对路径,以便可以在 TeamCity 和本地运行测试:

string currentDir = new System.Diagnostics.StackFrame(true).GetFileName();
var workingFile = new FileInfo(currentDir);
string fileContents = File.ReadAllText(workingFile.Directory + relativeFilePath);

relativeFilePath 是包含文件的变量。从 TeamCity 或本地运行时,fileContents 将包含此文件的内容。

于 2013-02-13T14:54:24.113 回答