ASP.NET MVC(.NET Framework 4.6)のプロジェクトをVisual Studio Team Servicesでビルドしたいとします。作成したデフォルトのビルド定義には単体テストを実行するタスクがあり、有効にしています。
しかし、ビルドしても、このようにテスト結果が表示されません。もちろんローカルでは表示されます。これはどういうことでしょうか?
原因はvstestに指定するターゲットフレームワークの指定がFramework4(.NET 4)になっているからじゃないかな、と思います。ビルドタスク内のTestのAdvanced Execution OptionsのOther Console Optionsに"/UseVsixExtensions:false /Framework:framework45"と指定してください。
こんな感じ。/UseVsixExtensionsはVSIXの拡張機能を使用しない、という指定です。コンソールで実行するテストのときあっても意味がないので無効化しています。
ビルド後、単体テスト結果やカバレッジ結果が正しく表示されるようになりました。この指定はRun Settings Fileに指定したテスト構成ファイルでもできるはずなのですが、リポジトリに追加するのも面倒なので、実行時引数に指定しています。