2

単体テストを実行するために継続的インテグレーションのセットアップを取得しようとしているので、設定しました

<RunTest>true</RunTest>

そして、自動検出するようにテストをセットアップしました。

<ItemGroup>
  <TestContainer Include="$(OutDir)%2a.Test.dll" />
</ItemGroup>

開発マシンでビルドを実行すると単体テストが実行され、ビルドが成功したことが報告されます。自動ビルドとして実行すると、テストは (BuildLog に従って) 実行されますが、ログに次のように表示されます。

テスト実行 tfs_service@TFS-BUILD 2012-04-13 14:13:59_Any CPU_Release の結果をhttp://mycompany-tfs:8080/Build/v1.0/PublishTestResultsBuildService2.asmxに公開しています ...

ドロップ共有ディレクトリ "\tfs-build\Builds\Test\MyProduct Test_20120413.2" にアクセスできませんでした。

ドロップ共有ディレクトリ "\tfs-build\Builds\Test\MyProduct Test_20120413.2" にアクセスできませんでした。

MSBUILD : 警告 MSB6006: "MSTest.exe" がコード 1 で終了しました。

タスクが ContinueOnError=true で呼び出されたため、前のエラーは警告に変換されました。

バイナリは非常に陽気に発行されるため、これは奇妙です。

ビルド サーバーのコンソールにログオンし、Visual Studio 2008 コマンド プロンプトを実行し、ソースの場所に移動し、MSBuild を呼び出して、問題を診断しようとしましたが、単体テストを呼び出そうとさえしていないようです。 ?

最終的に、「結果のドロップが失敗した理由を推測する」ことにもっと興味があります-ビルド定義名に埋め込まれたスペースでしょうか? バイナリが正常に公開されている場合、他に何を確認できますか?

4

1 に答える 1

0

単体テストが実行されています。問題は、結果が正しく公開されていないことです。単体テストが実行されると、結果が tfs サーバーに発行され、ドロップ場所にコピーされます。このため、ドロップ共有は、TFS ビルド サービス アカウントがこのフォルダーに書き込むことを許可する必要があります。

http://blogs.msdn.com/b/vstsqualitytools/archive/2010/10/24/test-agent-test-controller-and-mstest-faq.aspx

于 2012-10-16T04:14:08.263 に答える