2015-11-30 26 views
7

私はdocumentation for MSTestを調べましたが、テストプロジェクトでのtestsettings/runsettingsの適切な使い方を理解するのはまだ苦労しています。 This articleは、.runsettingsがすべて必要であり、もはや.testsettingsファイル(VS2010以上)が必要でないことを示しています。MSTest.exeでコマンドライン経由で.runsettingsを使用する

私は、アプリケーションの統合テストを実行するためにSelenium Driverを使用する一連のテストを作成しました。これらは統合テストなので、これらのテストが実行される環境に応じて異なるパラメータを提供する方法が必要です。これを実現するために、ローカルの開発環境用とステージング用の2つの別々の.runsettingsファイルを作成しました。

Visual Studioでこれらのテストを実行するだけで問題ありません。 Visual Studioには、テスト/テスト設定/テスト設定の選択メニューオプションを使用して、設定ファイルを指定するオプションがあります。

私のビルドサーバーでは、しかし、私はコマンドラインツールと特にMSTest.exeに依存する必要があります。次のコマンドラインはテストを実行し、結果ファイルを正しくビルドします。私たちは、私が.testsettingsに指定されたパラメータを取得しようとすると

MSTest.exe /noisolation /resultsfile:"D:\Results\TestResult.trx" /testcontainer:"d:\Project\bin\Release\Project.Tests.dll" 

はしかし、すべてのテストがスローされたとNullReferenceExceptionのために失敗しています。

.testsettingsファイルにMSTest.exe引数を使用してパスを渡す方法はありますか?私は、ドキュメントおよび/ヘルプオプションを検討し、私が見つけた最も近いオプションが/testsettingsだった、.testsettingsファイルへのパスを指定するために使われているので、私が欲しいものではありませんています。

答えて

9

using a .runsettings file, you need to use vstest.console.exeの場合は、mstest.exeではありません。 mstest.exeを使用する場合は、Visual Studio 2010で使用したのと同様のファイル.testsettingsを使用する必要があります。

+0

ありがとうございます!どのように私は非常に明らかな何かを逃したかわからない!私はrunsettingが** MSTest **と* VSTest.Console **の両方で使えると誤解しており、違いを実現するためにはあまりにも集中していました。 いずれにせよ、私はあなたの助けに感謝します! – DaRussian

関連する問題