TestContext クラスの使用

更新 : 2007 年 11 月

単体テストでは、TestContext クラスをさまざまな目的で使用できます。よくある用途は次のとおりです。

TestContext の取得

単体テストを実行する場合、単体テストを含むテスト クラスに TestContext プロパティが定義されていると、TestContext 型のインスタンスの実体が自動的に提供されます。単体テスト フレームワークによって、テストの実行中に使用される TestContext のメンバが自動的に追加されます (TestContext のメンバの詳細については、「TestContext」を参照してください)。つまり、TestContext 型をコード内でインスタンス化したり派生させたりする必要はありません。必要に応じて使用を開始してください。IntelliSense サポートが用意されています。

テスト クラスの中には、TestContext プロパティが自動定義されないものもあります。定義されるかどうかは、テストの作成方法によって決まります。

TestContext プロパティが自動定義される場合

単体テストをコードから生成すると、TestContext プロパティは自動的に定義されます。単体テストの生成方法の詳細については、「方法 : 単体テストを生成する」を参照してください。

TestContext プロパティが自動定義されない場合

自動生成以外にも、単体テストを作成する方法がいくつかあります。次に示すような方法でテストを作成すると、TestContext プロパティは自動定義されません。

  • 新しいテスト クラスを手入力でコーディングする。

  • 新しい単体テスト ファイルをプロジェクトに追加する。たとえば、[テスト] メニューの [新しいテスト] をクリックし、[新しいテストの追加] ダイアログ ボックスで [単体テスト] を選択します。

これらの場合、TestContext プロパティを手動で追加する必要があります。単体テストのコーディングの詳細については、「方法 : 単体テストを編集する」を参照してください。

TestContext の例

TestContext を使用するには、メンバとプロパティをテスト クラス内に作成します。C# の場合の例を次に示します。

private TestContext testContextInstance;
/// <summary>
///Gets or sets the test context which provides
///information about and functionality for the current test run.
///</summary>
public TestContext TestContext
{
    get
    {
        return testContextInstance;
    }
    set
    {
        testContextInstance = value;
    }
}

テスト フレームワークがプロパティを自動設定し、それを単体テストで使用できます。

参照

処理手順

方法 : 単体テストを編集する

概念

データ ドリブン ユニット テストのコーディング

チーム環境の Web サイトと Web サービスをテストする

参照

TestContext

その他の技術情報

方法 : 単体テストを生成する

ASP.NET 単体テストの操作

Web サービスのテスト