私はグーグルで調べて、以下の参考文献を見つけました。現在、私はコマンドラインからすべてを実行したい(実行と迅速性のため):
上記の私のニーズに合った正しいコマンドをどのように書くことができるのか分かりません。
参照:
しばらくして、以下の役立つヒントを見つけました。
%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe
にあるMSTest.exeを使用してVisual Studio単体テストを実行します。/testcontainer:Path\To\Your\TestProjectAssembly.dll
を使用して、テストがコーディングされている場所を示します。必要に応じて、複数の「/ testcontainer」オプションを指定できます。/test:TestFilter
を使用して、実行するテストをフィルタリングします。このフィルターは完全なテストメソッド名(つまり、FullNamespace.Classname.MethodName)に適用されることに注意してください。現在、私は自分のニーズにいくつか答えがあります:
特定のテスト(つまり、[TestMethod()]
とマークされたメソッドによって記述されたテスト)
使用する MSTest.exe
/container:
AssemblyContainingYourSpecificTest/test:
TheSpecificTestName
クラス内のすべてのテスト
使用する MSTest.exe
/container:
TheAssemblyContainingYourClass/test:
TheClassNameWithFullNamespace/test:
は、フィルタリング時にクラスのフルネームを使用するフィルターです。
その他はまだ不明のままです。方法を知っている場合は議論してください。
番号4。の場合、アセンブリ内のすべてのテストを実行するには、次のようにします。
mstest /testcontainer:YourCompiledTestAssembly.dll
質問用
5カテゴリとしてマークされたものを除くすべてのテスト[TestCategory( "some-category")]
使用する
mstest.exe /testcontainer:yourTests.dll /category:"!some-category"
複数のカテゴリを除外する必要がある場合は、使用します
mstest.exe /testcontainer:yourTests.dll /category:"!group1&!group2"
リファレンス: / category filter
Gallio バンドルに興味があるかもしれません。さまざまなテストランナー(GUI、コマンドライン、PoSh、サードパーティツールのプラグインなど)でテスト(MSTest、MbUnit、NUnit、xUnitなど)を実行するための無料の共通自動化プラットフォームを提供します。
特に、Gallio.Echoを使用することができます。これは、ニースのコマンドラインテストランナーです。
Gallioテストランナーには フィルタリング機能 があり、ユニットテストのサブセットのみを実行できます(たとえば、カテゴリごと、フィクスチャごとなど)。