Visual Studio で単体テストを実行するRun unit tests in Visual Studio

このトピックでは、Microsoft Visual Studio でテスト エクスプローラーを使用して単体テストを実行する方法について説明します。This topic describes how to run unit tests by using the Test Explorer in Microsoft Visual Studio.

単体テスト フレームワークとテスト プロジェクトUnit test frameworks and test projects

Visual Studio には、マネージ コードおよびネイティブ C++ コード用の Microsoft 単体テスト フレームワークが含まれます。Visual Studio includes the Microsoft unit testing frameworks for managed code and native C++ code. テスト エクスプローラーは、ソリューション内の複数のテスト プロジェクト、および運用コード プロジェクトに含まれるテスト クラスからテストを実行できます。Test Explorer can run tests from multiple test projects in a solution, and from test classes that are part of the production code projects. テスト プロジェクトには、Visual C++ または Visual C# と Visual Basic の単体テスト フレームワークを自由に組み合わせることができます。Test projects can be any combination of the Visual C++ or the Visual C# and Visual Basic unit test frameworks. テスト対象のコードを .NET Framework 用に記述する場合、対象コードの言語にかかわらず、テスト プロジェクトをどの .NET Framework 言語でも記述できます。When the code under test is written for the .NET Framework, the test project can be written in any .NET Framework language, regardless of the language of the target code. ネイティブ C/C++ コード プロジェクトは、C++ の単体テスト フレームワークを使用してテストする必要があります。Native C/C++ code projects must be tested by using a C++ unit test framework.

テスト エクスプローラーでテストを実行するRunning tests in Test Explorer

テスト プロジェクトをビルドすると、テストはテスト エクスプローラーに表示されます。When you build the test project, the tests appear in Test Explorer. テスト エクスプローラーが表示されない場合は、Visual Studio メニューの [テスト] をクリックし、 [Windows][テスト エクスプローラー]の順に選択します。If Test Explorer is not visible, choose Test on the Visual Studio menu, choose Windows, and then choose Test Explorer.

単体テスト エクスプローラーUnit Test Explorer

テストを実行して、記述し、再実行すると、テスト エクスプローラーに [失敗したテスト][成功したテスト][スキップされたテスト] 、および [テストを実行しない]の既定のグループの結果が表示されます。As you run, write, and rerun your tests, Test Explorer displays the results in default groups of Failed Tests, Passed Tests, Skipped Tests and Not Run Tests. テスト エクスプローラーでテストをグループ化する方法を変更できます。You can change the way Test Explorer groups your tests.

テスト エクスプローラーのツール バーからテストの検索、整理、および実行の作業の多くを実行できます。You can perform much of the work of finding, organizing, and running tests from the Test Explorer toolbar.

テスト エクスプローラー ツールバーからテストを実行Run tests from the Test Explorer toolbar

テストの実行Running tests

ソリューション内のすべてのテスト、グループ内のすべてのテスト、または選択した一連のテストを実行できます。You can run all the tests in the solution, all the tests in a group, or a set of tests that you select. 次のいずれかの操作を行います。Do one of the following:

  • ソリューション内のすべてのテストを実行するには、 [すべて実行]をクリックします。To run all the tests in a solution, choose Run All.

  • 既定のグループ内のすべてのテストを実行するには、 [実行] をクリックし、メニューでグループを選択します。To run all the tests in a default group, choose Run... and then choose the group on the menu.

  • 実行する個々のテストを選択し、選択したテストのショートカット メニューを開いて、[選択したテストの実行] を選択します。Select the individual tests that you want to run, open the shortcut menu for a selected test and then choose Run Selected Tests.

    テストの実行中、テスト エクスプローラー ウィンドウの一番上にある成功/失敗ステータス バーがアニメーション化されます。The pass/fail bar at the top of the Test Explorer window is animated as the tests run. テストの実行の終了時に、すべてのテストが成功した場合は、成功/失敗ステータス バーが緑色に変わり、いずれかのテストが失敗した場合は、赤色に変わります。At the conclusion of the test run, the pass/fail bar turns green if all tests passed or turns red if any test failed.

テスト結果の表示Viewing test results

テストを実行して、記述し、再実行すると、テスト エクスプローラーに [失敗したテスト][成功したテスト][スキップされたテスト] 、および [テストを実行しない]のグループの結果が表示されます。As you run, write, and rerun your tests, Test Explorer displays the results in groups of Failed Tests, Passed Tests, Skipped Tests and Not Run Tests. テスト エクスプローラーの下部の詳細ペインに、テストの実行の概要が表示されます。The details pane at the bottom of Test Explorer displays a summary of the test run.

テストの詳細を表示するViewing test details

個々のテストの詳細を表示するには、そのテストを選択します。To view the details of an individual test, select the test.

テストの詳細ペインに次の情報が表示されます。The test details pane displays the following information:

  • テスト メソッドのソース ファイル名と行番号。The source file name and the line number of the test method.

  • テストの状態。The status of the test.

  • テスト メソッドの実行に要した経過時間。The elapsed time that the test method took to run.

    テストが失敗した場合、詳細ペインには次の情報も表示されます。If the test fails, the details pane also displays:

  • テストの単体テスト フレームワークによって返されたメッセージ。The message returned by the unit test framework for the test.

  • テストが失敗した時刻のスタック トレース。The stack trace at the time the test failed.

テスト メソッドのソース コードの表示Viewing the source code of a test method

Visual Studio エディターのテスト メソッドのソース コードを表示するには、テストを選択し、ショートカット メニューの [テストを開く] を選択します (キーボードの F12 キー)。To display the source code for a test method in the Visual Studio editor, select the test and then choose Open Test on the shortcut menu (Keyboard: F12).

テスト一覧の整理Organizing the test list

テストのグループ化Grouping tests

既定では、テスト エクスプローラーに [失敗したテスト][成功したテスト][スキップされたテスト]、および [未実行のテスト] の子ノードとしてテストが表示されます。By default, Test Explorer displays your tests as child nodes of Failed Tests, Passed Tests, Skipped Tests and Not Run Tests.

テスト エクスプローラー グループ ボタンTest Explorer group button これらのテストの実行に要する時間によってテストをグループ化するには、[グループ化] ボックスの一覧を開き、[期間] を選択します。To group your tests by the time it takes to execute them, open the Group By list and choose Duration. 元のグループに切り替えるには、[テスト成果] を選択します。Choose Test Outcome to switch to the original grouping.

テスト一覧の検索およびフィルター処理Searching and filtering the test list

多数のテストがある場合、テスト エクスプローラーの検索ボックスに入力し、指定した文字列によって一覧をフィルター処理できます。When you have a large number of tests, you can type in the Test Explorer search box to filter the list by the specified string. 検索文字列を入力する前に、フィルターの一覧から選択して、フィルターを特定の種類の文字列に制限できます。You can restrict your filter to specific types of strings by choosing from the filter list before you enter the search string.

検索フィルターのカテゴリSearch filter categories

単体テストのデバッグDebugging unit tests

テスト エクスプローラーを使用して、テストのデバッグ セッションを開始できます。You can use Test Explorer to start a debugging session for your tests. Visual Studio デバッガーを使用してコードをシームレスにステップ実行すると、テスト対象のプロジェクトと単体テストの間を切り替えることができます。Stepping through your code with the Visual Studio debugger seamlessly takes you back and forth between the unit tests and the project under test. デバッグを開始するには:To start debugging:

  1. Visual Studio エディターで、デバッグする 1 つ以上のテスト メソッドにブレークポイントを設定します。In the Visual Studio editor, set a breakpoint in one or more test methods that you want to debug.

    注意

    テスト メソッドを任意の順序で実行できるため、デバッグするすべてのテスト メソッドにブレークポイントを設定します。Because test methods can run in any order, set breakpoints in all the test methods that you want to debug.

  2. テスト エクスプローラーでテスト メソッドを選択し、ショートカット メニューの [選択したテストのデバッグ] を選択します。In Test Explorer, select the test methods and then choose Debug Selected Tests on the shortcut menu.

    デバッガーについて詳しくは、「 Debugging in Visual Studio」をご覧ください。For more information, about the debugger, see Debugging in Visual Studio.