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 は、ファイルを含む変数です。fileContents には、TeamCity からまたはローカルで実行されたときに、このファイルの内容が含まれます。

于 2013-02-13T14:54:24.113 に答える