TFS2012 へのアップグレードが開始されるのを待っている間に、VS2012/.NET 4.5 x64 アプリケーションをコンパイルする TFS2010 ビルド プロセスに、MSTest.exe の代わりに VSTest.Console.exe を使用するというまったく同じニーズがあります。
私が取ったアプローチは、ビルド スクリプト XAML を編集し、単体テスト用の既存のワークフローを削除して、VSTest.Console.exe パラメーターを構築し、InvokeProcess を介して VSTest.Console.exe を実行するカスタマイズされたワークフローに置き換えることでした。次に、Finally ブロックで、テスト結果に関係なく、ビルド サーバーの VS2012 インストールから MSTest.exe を使用して、テスト結果とコード カバレッジを TFS に公開するようにしました。
残念ながら、XAML は文字長を超えているため、回答に投稿できませんが、DefaultTemplate.xaml で置き換えられるスニペットと、それを置き換えるもので構成されるテキスト ファイルがあります。ファイルはここにあります。このアプローチは機能しますが、ハックであることに注意してください。
もう 1 つの方法は、MSTest または VSTest.Console の代わりに NUnit を使用することです。これは 64 ビット バイナリをサポートするためです。この記事では、NUnit を TFS2010 ビルド スクリプトに統合する方法を説明し、これを実現するために必要なツールとリソースへのリンクを示します。NUnit の唯一の問題は、コード カバレッジ (さらに別のツールが必要で、これらの結果を TFS に公開する方法を検討する必要があります) と、DeploymentItem などの属性と TestContext などのプロパティを使用した MSTest スタイルの統合テストです。 VSTest.Console.exe アプローチ。
そして、私が読んだことから、TFS2012 はビルド スクリプトから VSTest.Console.exe への簡単な統合を提供するため、TFS2012 にアップグレードする場合、私が文書化した VSTest.Console.exe ハックは必要ないかもしれません。