コードの単体テスト

単体テストを実行することにより、開発者およびテスト担当者は、Visual C#、Visual Basic、および Visual C++ のプロジェクトでクラスのメソッドに論理エラーがないかどうかをすばやく確認できます。

単体テスト ツールには次の要素が含まれます。

  1. テスト エクスプローラー。 テスト エクスプローラーを使用すると、単体テストを実行して結果を表示することができます。 テスト エクスプローラーは、サードパーティ製のフレームワークを含めて、エクスプローラーのアダプターがあるすべての単体テスト フレームワークを使用できます。

  2. マネージ コード用の Microsoft 単体テスト フレームワーク。 マネージ コード用の Microsoft 単体テスト フレームワークは、Visual Studio と共にインストールされ、.NET コードをテストするためのフレームワークを提供します。

  3. C++ 用の Microsoft 単体テスト フレームワーク。 C++ 用の Microsoft 単体テスト フレームワークは、Visual Studio と共にインストールされ、ネイティブ コードをテストするためのフレームワークを提供します。

  4. コード カバレッジ ツール。 テスト エクスプローラーで、単体テストが 1 つのコマンドから実行する製品コードの量を確認できます。

  5. Microsoft Fakes 分離フレームワーク。 Microsoft Fakes 分離フレームワークによって、テスト対象コード内の依存関係を作成する実稼働コードおよびシステム コード向けの代替クラスおよび代替メソッドを作成できます。 関数の Fake デリゲートを実装して、依存関係オブジェクトの動作と出力を制御します。

    また、IntelliTest を使用して .NET コードを確認し、テスト データと単体テストのスイートを生成することもできます。 コードにある各ステートメントについて、そのステートメントを実行するテスト入力が生成されます。 コード内の各条件付き分岐について、ケース分析が実行されます。

主なタスク

単体テストを理解および作成するには、次のトピックを参照してください。

タスク 関連するトピック
クイック スタートおよびチュートリアル: 次のトピックでは、Visual Studio での単体テストについてコード例から学習できます。 - チュートリアル: マネージ コードに対する単体テストの作成と実行
- クイック スタート: テスト エクスプローラーによるテスト駆動開発
- 既存の C++ アプリケーションへの単体テストの追加
- テスト エクスプローラーを使用したネイティブ コードの単体テスト
テスト エクスプローラーによる単体テスト: テスト エクスプローラーによって、さらに生産性が高く効率的な単体テストを作成できることを学習します。 - 単体テストの基本
- 単体テスト プロジェクトを作成する
- テスト エクスプローラーを使用して単体テストを実行する
- サードパーティ製の単体テスト フレームワークをインストールする
- Visual Studio 2010 からの単体テストのアップグレード
マネージ コードの単体テスト: - マネージ コード用の Microsoft 単体テスト フレームワークを使用した .NET Framework 用単体テストの記述
C++ コードの単体テスト - C++ 用の Microsoft 単体テスト フレームワークを使用した C++ 用単体テストの記述
単体テストの分離 - Microsoft Fakes を使用したテストでのコードの分離
コード カバレッジを使用して、単体テストでテストされたプロジェクトのコードの割合を調べる: Visual Studio Application Lifecycle Management のテスト ツールのコード カバレッジ機能について学習します。 - コード カバレッジを使用した、テストされるプロジェクトのコード割合の確認
単体テストにロード テストを使用したストレスおよびパフォーマンスの分析の実行: ロード テストを作成し、それに単体テストを追加すると、アプリケーションのパフォーマンスおよびストレスの問題を分離するのに役立ちます。 注: ロード テストを作成して使用するには、Visual Studio Enterprise が必要です。 - ロード テストの作成と編集
- 方法: ロード テスト シナリオに、Web パフォーマンス テストと単体テストを追加する
- 方法: ロード テスト シナリオから、Web パフォーマンス テストと単体テストを削除する
品質ゲートの設定と適用: 品質ゲートを作成し、コードがチェックインされる前にテストを実行することで、コードの品質を保証できます。 - 品質ゲートの設定と適用
単体テストの種類の拡張: 単体テスト フレームワークにはない場合がある機能をテストに追加できます。 たとえば、テストを通常のユーザーとして実行するかどうかを指定するテスト プロパティを追加できます。 また、フレームワークを拡張して、行の属性をメソッドに追加し、テスト内でその行のデータを使用することもできます。 単体テスト フレームワークを拡張する方法のサンプル コードについては、次の Microsoft Web サイトを参照してください。
テストのオプションを設定する: たとえば、テスト結果が格納される場所を指定できます。 .runsettings ファイルを使用して単体テストを構成する

Microsoft テスト マネージャーでのテスト結果の確認

テスト結果とその扱い方 (テスト結果を表示、保存、発行する方法など) について説明します。

Microsoft Visual Studio を使用したシステム テストの実行

Microsoft Test Manager を使用するのではなく、Visual Studio を使用して自動テストを実行する方法へのリンクを示します。

参照

<xref:Microsoft.VisualStudio.TestTools.UnitTesting>
UnitTesting 名前空間について説明します。この名前空間は、単体テストをサポートする属性、例外、アサートなどのクラスを提供します。

<xref:Microsoft.VisualStudio.TestTools.UnitTesting.Web>
UnitTesting.Web 名前空間について説明します。この名前空間は、ASP.NET および Web サービスの単体テスト サポートを提供することで UnitTesting 名前空間を拡張します。

外部リソース

ビデオ

Channel 9: XAML を使用した Windows ストア アプリのビルドの単体テスト

フォーラム

Visual Studio の単体テスト

ガイダンス

Visual Studio 2012 を使用した継続的配信のためのテスト - 第 2 章: 単体テスト: 内部のテスト

参照

単体テストのコンテンツ インデックス

関連項目

コード品質の向上
アプリケーションのテスト