方法: テスト カテゴリで自動テストをグループ化して実行する
テスト カテゴリを使用すると、テスト リストを保守しなくても、割り当てられたカテゴリに基づいてテストのグループを実行できます。テスト カテゴリは、一つまたは複数のテストに割り当てることができるテスト メソッドの属性です。
テスト カテゴリと論理演算子を組み合わせて使用すると、複数のカテゴリのテストを同時に実行したり、実行するテストを複数のカテゴリに属するテストに限定したりすることができます。また、テスト メソッドを作成するときにテスト カテゴリの追加が容易になり、テスト メソッドの作成後にテスト リストを保守する必要がありません。
要件
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional
テスト カテゴリの作成と割り当て
テスト カテゴリを手動でテストに追加するには
ソリューション エクスプローラーで、単体テスト プロジェクト、またはコード化された UI テスト プロジェクトで、単体テストを含む開き、変更する単体テスト メソッドをファイルを検索します。
テスト メソッドの宣言のすぐ上に、テストに割り当てる各テスト カテゴリの "TestCategory()" 属性を追加します。各属性は、コンマを使用して区切ります。
かっこで囲んだカテゴリ名を、それぞれの "TestCategory()" 属性に追加します。次の例は、"Nightly"、"Weekly"、"ShoppingCart" という名前の 3 つのテスト カテゴリが割り当てられたメソッドです。
[TestCategory("Nightly"), TestCategory("Weekly"), TestCategory("ShoppingCart"), TestMethod()] public Void DebitTest() { }
テストのカテゴリ別の実行
コマンド ラインからテストを実行するときは、論理演算子 & (AND)、| (OR)、および ! (NOT) を使用して、テストに割り当てられているカテゴリに基づいて、実行するテストを選択することもできます。
コマンド ラインからカテゴリを使用してテストを実行するには
Visual Studio のコマンド プロンプトを開きます。
これを行うには、**[開始]を選択し、すべてのプログラムをポイントし、Microsoft Visual Studio 2012 年をポイントし、[Visual Studio ツール]**をポイントし、Developer のコマンド プロンプトを選択します。
既定では、Visual Studio コマンド プロンプトで次のフォルダーが開きます。
<ドライブ文字>:\Program Files\Microsoft Visual Studio 11.0\VC
[!メモ]
コマンド プロンプト ウィンドウで既定で開くフォルダーを変更するには、[開始]を選択し、Microsoft Visual Studio 2012 年をポイントし、[Visual Studio ツール]をポイントし、Developer のコマンド プロンプトを右クリックし、を [プロパティ]を選択します。Developer のコマンド プロンプトのプロパティ のダイアログ ボックスで、ボックス 開始 既定のフォルダーへのパスを変更できます。
通常はテスト プロジェクトの .dll ファイルであるテスト コンテナーが置かれているソリューション フォルダー内の場所にディレクトリを変更します。また、手順 3. で MSTest.exe プログラムを実行するときは、テスト コンテナーの完全パスまたは相対パスを指定します。
ソリューション フォルダーを見つけるには、まず Visual Studio Projects フォルダーを見つけます。これを行うには、Visual Studioの [ツール] の [オプション] メニューのを選択し、[プロジェクトおよびソリューション]を選択します。[Visual Studio プロジェクトの場所] の下に次のようなパスが表示されます。
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects
通常、ソリューション フォルダーは次の例の Bank フォルダーのように、この Projects フォルダーのサブフォルダーです。
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\Bank
「Nightly」のカテゴリに割り当てられているテストを実行するには、/testcontainer および /category オプションを使用して /TestCaseFilter オプションを使用するか、または MSTest.exe VSTest.Console.exe からを実行します:
VSTest.Console.exe
Vstest.console.exe myTestProject.dll /TestCaseFilter: " Nightly」 「TestCategory=
MSTest.exe
mstest /testcontainer: : MyTestprojectName.dll /category「Nightly」
結果と概要がコマンド プロンプト ウィンドウに表示されます。
[!メモ]
式で AND または OR を使用してテストのカテゴリを選択することはできますが、同じ式で AND と OR の両方を使用することはできません。
詳細については、「VSTest.Console.exe コマンド ライン オプション」、「方法: MSTest を使用してコマンド ラインから自動テストを実行する」、および「MSTest.exe コマンド ライン オプション」を参照してください。