テスト配置の概要

更新 : 2007 年 11 月

Visual Studio Team System Test Edition では、テストを作成または生成したフォルダと、別の配置フォルダのいずれでもテストを実行できます。テスト実行構成の設定によって、テスト配置を有効にするかどうかを選択できます。詳細については、「方法 : テストの配置を構成する」を参照してください。

テスト配置により、独立してテストを実行することができ、より純粋な条件でのテスト実行が可能となるため、テスト結果の正確性が向上します。この配置の手順において、Test Edition は、配置項目であるファイルとフォルダをテストの実行前に配置フォルダにコピーします。Test Edition は、次の種類のファイルをコピーします。

  • テスト バイナリ ファイル。たとえば、テスト プロジェクトからビルドされたアセンブリや、汎用テストのバイナリ ファイルです。

  • すべての依存アセンブリ。詳細については、「Test Edition でのトラブルシューティング」を参照してください。

  • XML ファイルや構成ファイルなど、テストが依存する指定したファイル。配置を構成するには、コピーされる追加の配置項目を指定するか、配置フォルダを変更します。詳細については、「方法 : テストの配置を構成する」を参照してください。

    ms182474.alert_note(ja-jp,VS.90).gifメモ :

    テスト配置を有効にするか無効にするかの選択は、上記のリストに示したすべての項目 (テスト ファイル、依存アセンブリ、および明示的に指定したファイルの配置) の配置に影響します。テスト配置の有効化と無効化の詳細については、「方法 : テストの配置を構成する」を参照してください。

配置手順を含め、テストの実行時に行うすべての手順の詳細については、「テストの実行の手順」を参照してください。

2 つの配置方法

配置には、ローカルとリモートの 2 種類があります。

  • ローカル テスト実行。既定では、テストは Visual Studio をインストールしたコンピュータで、ローカルに実行されます。この場合、配置項目およびテスト バイナリはローカル配置フォルダにコピーされ、そのフォルダで実行されます。詳細については、「ローカル配置フォルダ」を参照してください。

  • リモート テスト実行。リモート実行では、エージェントとコントローラを使用します。最初に、配置項目はローカル配置フォルダ、つまり現在のテスト実行の Out フォルダにコピーされます。「ローカル配置フォルダ」を参照してください。次に、これらはコントローラ コンピュータの配置フォルダにコピーされ、そこから 1 つ以上のエージェント コンピュータの配置フォルダにコピーされます。最後に、テストがエージェント コンピュータで実行され、結果が返されます。エージェントおよびコントローラの詳細については、「コントローラ、エージェント、およびリモート テスト マシン群」を参照してください。

ローカル配置フォルダ

ソリューションのテストを実行するとき、Visual Studio は、ソリューションの階層構造を持つ TestResults という名前のフォルダに配置ファイルを作成します。TestResults フォルダが存在しない場合は、Visual Studio によって作成されます。

ms182474.alert_note(ja-jp,VS.90).gifメモ :

Visual Studio IDE を使用している場合、このフォルダはソリューション フォルダの直下に作成されます。Visual Studio IDE を使用していない場合は、現在のフォルダの下に TestResults フォルダが作成されます。

テスト実行を開始するたびに、そのテスト実行で排他的に使用されるフォルダのセットが Test Edition によって TestResults フォルダの下に作成されます。このセットの上位フォルダの名前は、テスト実行に基づいて付けられます。次の図に示す例では、TestResults の下の 1 番目のフォルダは "<ユーザー名>@<コンピュータ名><日付> <時刻>" となります。この名前は、"<ユーザー名>@<コンピュータ名><日付> <時刻>" というテストの実行に基づいて付けられています。

テストのローカル配置フォルダ

ローカル テスト実行用の配置フォルダ

前の図では、ClassLibrary1 ソリューションに ClassLibary1 と TestProject1 という 2 つのプロジェクトが含まれています。テストが実行済みなので、このソリューションには TestResults というフォルダもあります。TestResults フォルダには、各テスト実行に対して 1 つのテスト結果ファイルが含まれています。このテスト結果ファイルは、テスト実行に基づいて名前が付けられ、拡張子は .trx です。

TestResults フォルダの下に作成されるその他のフォルダは、次のとおりです。

  • テスト実行フォルダ。TestResults の直下に、開始された各テスト実行に対して 1 つずつ作成されるフォルダです。テスト実行フォルダの名前は、[テスト結果] ウィンドウおよび [テストの実行] ウィンドウに表示されるように、テスト実行と同じです。テスト実行の名前の既定の形式は、<ユーザー名>@<コンピュータ名> <日付> <時刻> です。テストの実行のフォルダには、テストの実行前後に実行されるクリーンアップ スクリプトも含まれています。詳細については、「テストの実行の手順」を参照してください。

  • Out フォルダとサブフォルダ。各テスト実行フォルダには、Out というフォルダが含まれます。Out フォルダは、「テストの実行の手順」で説明されている実際の配置フォルダです。つまり、テスト実行に必要なアセンブリやその他のファイルまたはフォルダは、テスト実行が開始されるたびに <ソリューション>\TestResults\<テスト実行>\Out フォルダにコピーされます。

  • In フォルダとサブフォルダ。各テストの実行フォルダには、In という名前のフォルダが含まれます。「テストの実行の手順」で説明されているように、特定のテスト結果が生成されると、それらは In フォルダまたはサブフォルダに格納されます。たとえば、コード カバレッジ結果は、テストが実行されたコンピュータに基づいた名前のサブフォルダの中にある data.coverage ファイルに格納されます。

    ms182474.alert_security(ja-jp,VS.90).gifセキュリティに関するメモ :

    スマート デバイス ホストでテストを実行する場合、デバイスの In フォルダのファイルがデスクトップ上にコピーされます。信頼関係のないファイルが実行されないよう、Visual Studio では .txt または .log で終了しないすべてのファイルの末尾に .txt が追加されます。

テスト ホストの選択

配置項目をコピーすると、テストがテスト実行構成で選択されたテスト ホストで実行されます。ほとんどのテストは、既定の Visual Studio テスト ホストの配置フォルダで実行されます。ただし、特定の種類のテストは、次に説明するように別のテスト ホストで実行する必要があります。

  • ASP.NET ホスト。ASP.NET 単体テストなど、IIS プロセスまたは ASP.NET 開発サーバー プロセスで実行することが必要なテストを実行する場合は、このホストを選択します。詳細については、「ASP.NET 単体テストの概要」を参照してください。

  • スマート デバイス ホスト。スマート デバイスの単体テストなど、スマート デバイスまたはエミュレータ上で実行することが必要なテストを実行する場合は、このホストを選択します。詳細については、「スマート デバイス単体テストの概要」を参照してください。

テスト ホストの選択方法の詳細については、「方法 : テスト実行構成を指定する」を参照してください。

テスト配置のトラブルシューティング

次の問題が発生すると、ファイルは配置されません。

  • **ファイルが見つからない。**ファイルの指定に絶対パスを使用している場合は、指定したパスが存在していることを確認してください。また、ファイルをソース管理にチェックインするときには必ず絶対パスを使用してください。

    相対パスを使用した場合は、ルートが意図したとおりの場所であることを確認してください。パスに環境変数が含まれている場合は、環境変数が正しく設定されていることを確認してください。Debug\bin\program.xls など、構成固有のディレクトリを含む相対パスを使用している場合は、別の構成を現在使用しているために予期した場所にファイルが見つからないこともあります。

  • **アクセスが拒否される。**配置フォルダにコピーする必要のあるファイルに対してアクセス許可があることを確認してください。

  • **ファイルがネットワーク共有上にある。**ファイルがネットワーク共有上にあることが原因でコピーできない場合は、該当するファイルをローカル コンピュータにコピーし、新しい場所にあるファイルが配置されるように指定してください。そのうえで、テストを再実行します。

参照

処理手順

方法 : テストの配置を構成する

方法 : テスト実行構成を指定する

方法 : テスト結果を削除する

概念

アセンブリのインストルメント化と再署名

テストの実行の手順

その他の技術情報

Web サービスのテスト