テストの種類の選択
更新 : 2007 年 11 月
Visual Studio Team System Test Edition には、特定のソフトウェア テストを目的として使用できるさまざまなテストの種類が用意されています。次のテストの種類が Test Edition 製品の一部として含まれています。また、Test Edition の拡張機能を使用することによって、新しいカスタムのテストの種類を追加することもできます。
テストを作成する方法の詳細については、「テストの作成と編集」を参照してください。
テストが存在するファイルの詳細については、「テスト コンテナ」を参照してください。
単体テスト
単体テストはプログラム化されたテストで、Visual C# または Visual Basic でコード化されているか、Visual C++ でコード化され、/clr:safe でコンパイルされ、プロジェクトのメソッドを実行します。
メモ : |
---|
C++ 実行コードで単体テストを使用する方法、および C++ で記述された単体テストを使用する方法の詳細については、「ユニット テストと C++」を参照してください。 |
単体テストはクラスのメソッドを呼び出し、パラメータを渡し、返された値が意図したとおりのものであることを確認します。単体テストは手動で記述することも、自動的に生成することもできます。
[新しいテストの追加] ダイアログ ボックスには、単体テストを作成する 2 つの方法が用意されています。
[単体テスト] を使用して、有効な空の単体テスト メソッドを含む、手動でコード化できるソース ファイルをテスト プロジェクトに追加します。
単体テスト ウィザードを使用して [単体テストの作成] ダイアログ ボックスを表示し、現在のプロジェクト内のメソッドから単体テストを生成します。[単体テストの作成] ダイアログ ボックスは、ソース コードを右クリックし、[単体テストの作成] をクリックすることによっても表示できます。単体テストを生成した後は、それらを手動で編集して、使用できるように準備する必要があります。
単体テストには特別な形式がいくつかあります。
データ ドリブン 単体テストは、データ ソースの各行に対して繰り返し呼び出される単体テストを構成するときに作成されます。各行からのデータは、単体テストによって入力データとして使用されます。詳細については、「データ ドリブン単体テストの概要」を参照してください。
ASP.NET 単体テストは、ASP.NET Web アプリケーションでコードを実行し、ASP.NET 開発サーバーまたは IIS プロセスで実行される単体テストです。詳細については、「ASP.NET 単体テストの概要」を参照してください。
スマート デバイス単体テスト。Visual Studio には、C# および Visual Basic のスマート デバイス アプリケーションを対象とする各種のテスト ツールが用意されています。ASP.NET 単体テストの場合と同様、スマート デバイス アプリケーションのテストに使用する単体テストもカスタム ホスト アダプタで実行します。詳細については、「スマート デバイス プロジェクト用のテスト ツール」を参照してください。
詳細については、「単体テストの操作」を参照してください。手順を説明した例については、「チュートリアル : 単体テストの作成と実行」を参照してください。
汎用テスト
汎用テストは、既存のプログラムまたは他のソースのテストで、Visual Studio でテストとして動作するようにラップされています。
通常、汎用テストは、Visual Studio Team System フレームワーク外で以前に作成された、自動化されたテストまたはツールをラップします。そのため、汎用テストを使用すると、既存のテスト インフラストラクチャを活用できます。
汎用テストで使用できるテストまたはプログラムの例を次に示します。
プロセス終了コードを使用してテストの合格または失敗を伝える既存のテスト。0 は合格を示し、その他の値は失敗を示します。
テスト シナリオの間に特定の機能を取得する一般的なプログラム。
XML ファイルを使用して詳細な結果を伝えるテストまたはプログラム。XML ファイルは、Visual Studio の汎用テスト結果スキーマに準拠している必要があります。このスキーマは、[ドライブ:]:\Program Files\Microsoft Visual Studio 9\Common7\IDE\PrivateAssemblies\SummaryResult.xsd ファイルで定義されています。
詳細については、「汎用テストの操作」を参照してください。手順を説明した例については、「チュートリアル : 汎用テストの作成と実行」を参照してください。
ロード テスト
ロード テストを使用すると、単体テスト、Web テスト、汎用テスト、順序指定テストなど手動テスト以外のテストをカプセル化し、仮想ユーザーを使用することによってそれらを同時に実行できます。これらのロード テストを実行すると、テーブルおよびグラフ内のパフォーマンスおよびその他のカウンタを含むテスト結果が生成されます。
たとえば、ロード テストに Web テストを追加することによって、数百名のユーザーと Web アプリケーションとの同時対話をシミュレートできます。これにより、配置する前にピーク使用時の Web アプリケーションの動作をテストして、アプリケーションのエラーまたはボトルネックを見つけることができます。
詳細については、「ロード テストの操作」を参照してください。手順を説明した例については、「チュートリアル : ロード テストの作成と実行」を参照してください。
手動テスト
手動テストは、タスクを手順に従って実行するために使用されます。コンピュータと電源の間の接続が切断されているテストなど、特に自動化が困難または不可能であるテストに対して使用されます。このテストの種類は、自動化されたスクリプトではなく、テスト エンジニアによってテスト タスクを完了する必要がある場合に使用します。
手動テストは、次の 2 つの形式のいずれかで作成できます。
テキスト形式。テキスト形式の手動テストは、リッチ形式機能のないシンプルなテキスト エディタを使用して編集します。
Word 形式。Word 形式の手動テストは Microsoft Word を使用して編集します。テキストの書式や埋め込みグラフィックスなどのリッチ コンテンツを含めることができます。
手動テストを作成する場合、テスタに実行させる手順を記述します。詳細については、「手動テストの操作」を参照してください。手順を説明した例については、「チュートリアル : 手動テストの作成と実行」を参照してください。
順序指定テスト
順序指定テストは、単体テスト、Web テスト、汎用テスト、手動テスト、および順序指定テストなどロード テスト以外のテストを保持するコンテナです。順序指定テストは、特定の実行順序を保証します。詳細については、「順序指定テストの操作」を参照してください。
Web テスト
Web テストは、Microsoft Internet Explorer を使用してブラウザ セッションで記録した一連の順序指定の HTTP 要求から構成されます。コード化された Web テストを作成して、フロー制御などのより高度な機能を追加することもできます。テストでは、特定のページに特定の文字列が含まれているかどうかなど、要求するページまたはサイトに関する特定の詳細を報告するように設定できます。
Web テストを記録した後で、編集して、待ち時間などのプロパティや、Web サーバーにポストするデータを保存するデータ ソースを割り当てることができます。Web テストは、ロード テストの一部として使用すると、さらに強力になります。
詳細については、「Web テストの操作」を参照してください。手順を説明した例については、「チュートリアル : Web テストの記録と実行」を参照してください。