方法: 仮想環境を使用して手動テストを実行し、再現可能なバグを作成する
Visual Studio Lab Management がある場合、手動テストを実行するときに仮想環境を使用できます。 アプリケーションに必要なロールの仮想マシンまたはテンプレートを作成し、テストの設定からこのロールのセットを選択します。 環境、テストの設定、およびロールの詳細については、「テスト コンピューターでのテストの実行またはデータの収集の設定」および「コンピューターの設定およびテストの設定を使用した診断情報の収集」を参照してください。
手動テストを実行するように仮想環境を設定するときに、アプリケーションのバック エンド ロール用の仮想マシンまたはテンプレートを作成します。 たとえば、環境で使用する Web サーバー ロールやデータベース サーバー ロールの仮想マシンまたはテンプレートを含む仮想環境を作成できます。 仮想環境を作成した後、その環境に属していないデスクトップ コンピューターから手動テストを実行できます。 次の図に示すように、ブラウザーを実行してこのコンピューターから Web サーバーに接続することもできます。
注意
テスト ランナーを使用する場合に手動テストを実行するには、デスクトップ コンピューターに Visual Studio Test Professional 2010 または Visual Studio Ultimate をインストールする必要があります。
注意
この同じ環境を使用して自動テストを実行する場合、デスクトップ クライアントのロールを追加し、そのロールの仮想マシンまたはテンプレートを使用できます。 このロールを使用して手動テストを実行することはできません。 ただし、自動テストを実行するときにこのロールを使用できます。 仮想環境を使用して自動テストを実行する方法の詳細については、「方法: 仮想環境を使用して自動テストを実行する」を参照してください。
手動テストの実行時にアプリケーションでバグを発見した場合は、仮想環境のスナップショットを取得できます。開発者は、このスナップショットを使用して、バグ発見時における環境内のサーバーの実際の状態への接続を確認できます。 これにより、開発者が再現できないバグの数が減ります。 この環境の状態は、必要なときに開発者が調査に使用できるように保存されるため、ユーザーはこの同じ環境で引き続きテストを実行できます。 開発者がこの環境を使用する場合、バグ内のリンクを使用してスナップショットに接続できます。
注意
このスナップショットは、環境内の各仮想マシンのスナップショットです。 このスナップショットは、仮想マシンに使用される物理ホストに格納されます。 スナップショットは、Team Foundation Server 上の物理領域は使用しません。 バグまたはテスト結果では、スナップショットへのリンクのみが追加されます。
開発者がバグを確認する前に環境が削除される可能性がある場合、テスト担当者は、環境によるテストが完了したときにその環境のコピーをライブラリ共有に格納できます。 バグ内のリンクを使用することで、開発者は格納された環境のコピーを作成し、この環境を使用できます。
注意
バグのリンクを使用して環境のコピーを作成する場合、環境はネットワーク分離環境である必要があります。
手動テストの実行を簡単に設定できるように、アプリケーションのバック エンド層を作成して仮想環境に配置する場合、これを行うためのビルド定義を作成できます。 ワークフロー統合機能用のビルド コントローラーが必要です。 詳細については、「方法: アプリケーションを仮想環境に配置する」を参照してください。
前提条件
環境を使用して手動テストを実行する前に、次の手順を実行する必要があります。
仮想環境で必要なロールごとに仮想マシンまたはテンプレートを作成します。
各仮想マシンにラボ エージェントをインストールします。
各仮想マシンにテスト エージェントをインストールします。 これにより、環境で仮想マシンを使用して、テストを実行するときにデータと診断を収集し、テストを実行してバグが見つかったときに環境のスナップショットを作成できます。
ワークフロー統合機能を使用してアプリケーションを配置する場合、仮想マシンにビルド エージェントもインストールする必要があります。
手動テストの実行に使用するコンピューターに Visual Studio Test Professional 2010 または Visual Studio Ultimate をインストールします。
Microsoft テスト マネージャー を使用して手動テスト ケースを作成し、テスト計画内のテスト スイートに追加します。 詳細については、「テスト計画の使用によるテスト作業の定義」を参照してください。
手順
手動テストを実行し、再現できるバグを作成できるようにするには、次の手順に従います。 問題が見つかった場合は、環境内の仮想マシンに接続して情報を確認したり、開発者が環境を使用してバグを再現できるように環境のスナップショットを取得してバグに保存したりできます。
仮想環境を使用した手動テストの実行
環境内の仮想マシンへの接続
仮想環境のスナップショットの作成
仮想環境のスナップショットへの接続
仮想環境を使用した手動テストの実行
仮想環境を使用して手動テストを実行するには
仮想環境を作成し、ロールごとに必要な仮想マシンまたはテンプレートを追加します。 詳細については、「仮想環境の概念およびガイドライン」および「方法: 仮想マシンまたはテンプレートから環境を作成する」を参照してください。
重要
手動テストを実行するときに環境内の仮想マシンでデータと診断を収集するには、仮想環境でテスト機能を有効にする必要があります。
これを行うには、環境に対応したテスト コントローラーが必要です。 詳細については、「方法: Lab Management によるテストに使用するテスト コントローラーを追加する」を参照してください。
仮想環境を開始するには、[環境] ビューから環境を選択し、[開始] をクリックします。
環境内のコンピューターが起動され、環境のテスト機能を選択した場合はテスト機能が有効になっていることを確認します。 [環境] ビューで、テスト機能の状態が環境の詳細の [テスト] の横に表示されます。
注意
使用する環境がライブラリに格納されている場合、環境を開始する前に、格納されたイメージから仮想マシンを作成するように環境を配置する必要があります。
(推奨) テストを実行するときに他のユーザーが現在の環境に誤って接続するのを防ぐには、ツール バーの [使用中としてマーク] の横にあるドロップダウン矢印をクリックします。 環境を使用しているユーザーに関するコメントを追加し、[使用中としてマーク] をクリックします。
別のユーザーが、現在使用されている環境に接続しようとすると、[環境への接続] ダイアログ ボックスに、入力したコメントと共に警告が表示されます。 ただし、このユーザーは、警告を無視して環境に接続することもできます。
注意
Microsoft 環境ビューアーを使用して、使用されている環境をマークすることもできます。
環境内の仮想マシンで、アプリケーションのバック エンド層をインストールします。 バック エンド層に接続するには、デスクトップ コンピューターにアプリケーションのローカル クライアントのインストールが必要になることがあります。 ワークフロー統合機能を使用すると、ビルド定義を使用することで、アプリケーションに適したバック エンド層を自動的にインストールできます。 リソースを追加する方法の詳細については、「方法: アプリケーションを仮想環境に配置する」を参照してください。 アプリケーションを手動でインストールすることもできます。
注意
アプリケーションがインストールされたこのクリーンな状態に簡単に戻れるように、アプリケーションのインストール後に環境のスナップショットを取得することをお勧めします。
Microsoft テスト マネージャー を使用して仮想環境のロールのセットを含むテストの設定を作成し、ロールごとに収集するデータと診断を選択します。 手動テストのテストの設定を作成する方法の詳細については、「手動テストのテスト設定の作成」を参照してください。
作成したテストの設定と仮想環境をテスト計画に割り当て、テストを実行するには、次の手順を実行します。
テストを実行するコンピューターから Microsoft テスト マネージャー を使用して、センター グループ スイッチャーの下向きの矢印をクリックし、[テスト センター] をクリックします。
センター グループ メニュー バーの [計画] をクリックし、[プロパティ] をクリックします。
現在選択されているテスト計画のプロパティが表示されます。
[手動での実行] の [テストの設定] のドロップダウン矢印をクリックし、テスト設定を選択します。
[手動での実行] の [テスト環境] のドロップダウン矢印をクリックし、環境を選択します。
[保存して閉じる] をクリックします。
テストを実行するには、[テスト] をクリックし、[テストの実行] をクリックします。 実行するテストを選択し、[実行] をクリックします。
この特定のテストの実行専用に作成したテストの設定を使用してテストを実行するには、次の手順を実行します。
テストを実行するコンピューターから Microsoft テスト マネージャー を使用して、センター グループ スイッチャーの下向きの矢印をクリックし、[テスト センター] をクリックします。
テストを実行するには、[テスト] をクリックし、[テストの実行] をクリックします。 実行するテスト スイートまたはテストを右クリックし、[オプションを指定して実行] をクリックします。
[実行オプション] ダイアログ ボックスが表示されます。
[手動テスト実行] の [テストの設定] から、作成したテストの設定を選択します。
[手動テスト実行] の [環境] から仮想環境を選択し、[実行] をクリックします。
選択した最初のテストと共にテスト ランナーが表示されます。
最初のテストを開始するには、[テストの開始] をクリックします。 手動テストを実行する方法の詳細については、「方法: 手動テストを実行する」を参照してください。
選択したすべてのテストの実行を開始できるようになります。
テストのステップを実行するには、テスト対象のアプリケーションを起動する必要があります。 環境にインストールされたアプリケーションの部分に接続するには、アプリケーションのクライアントを使用します。 Microsoft テスト マネージャー をインストールしたコンピューターにインストールされているデスクトップ クライアントまたは Web ブラウザーを使用できます。
ネットワーク分離環境を使用する場合のアプリケーションへの接続の詳細については、「方法: ネットワーク分離環境を作成して使用する」のネットワーク分離環境内のコンピューターと外部ネットワークのコンピューターの通信に関するセクションを参照してください。
テスト結果を保存するには、テスト ランナーから [保存して閉じる] をクリックします。
[テストの実行] ビューが表示されます。
環境内の仮想マシンへの接続
仮想環境内のコンピューターに関する情報を確認する場合は、テストの実行時に任意の仮想マシンに接続できます。 たとえば、レジストリ エントリの値が正しいことを確認できます。
環境内の仮想マシンに接続するには
テストを実行するときに仮想環境内のコンピューターの状態を表示するには、テスト ランナーのテスト ステップ ツール バーの [環境に接続] をクリックします。
Microsoft 環境ビューアーが表示されます。 表示する仮想マシンを選択できます。 仮想マシンでコマンドを実行することもできます。
環境内のコンピューターに接続する方法の詳細については、「方法: 仮想環境に接続する」を参照してください。
ネットワーク分離環境を使用している場合は、「方法: ネットワーク分離環境を作成して使用する」を参照してください。
注意
テストの実行中に環境に接続する場合、スナップショットに復元しないでください。 テストの実行中にスナップショットに復元すると、テスト エージェントが再起動され、そのテスト実行のデータと診断を収集できません。 スナップショットを復元する場合は、テストの実行を開始する前に、テスト実行を停止し、スナップショットに復元する必要があります。
仮想環境のスナップショットの作成
仮想環境のスナップショットを作成するには
テストを実行するときに問題が見つかった場合は、テスト ステップ パネルのツール バーの右端にある [環境スナップショットの取得] アイコンをクリックします。 これにより、バグを作成したときに、仮想環境のこのスナップショットへのリンクがバグに追加されます。
注意
この時点で、環境内の各仮想マシンのスナップショットが取得されます。 このスナップショットは、仮想マシンに使用される物理ホストに格納されます。 スナップショットは、Team Foundation Server 上の物理領域は使用しません。 バグまたはテスト結果では、スナップショットへのリンクのみが追加されます。
バグの [詳細] タブに、"TC<テスト ケース ID>snapshot<スナップショット番号>.lvr" という名前のスナップショットが表示されます。 バグの詳細には、環境の仮想マシンで収集されたデータまたは診断も表示されます。
注意
このスナップショットへのリンクをテスト結果に表示することもできます。
テスト結果を保存するには、テスト ランナーから [保存して閉じる] をクリックします。
[テストの実行] ビューが表示されます。
仮想環境のスナップショットへの接続
仮想環境のスナップショットに接続するには
テスト結果から仮想環境のスナップショットに接続するには、Microsoft テスト マネージャー の [テストの実行] ビューから、テストを右クリックして [結果の表示] をポイントします。
スナップショットを作成したときに、テスト ステップに表示される環境のスナップショットへのリンクをクリックします。
[開く] をクリックしてファイルを開きます。
[環境への接続] ダイアログ ボックスが表示されます。
このダイアログ ボックスで、次のいずれかのオプションを選択します。
仮想環境をスナップショットを取得した時点とまったく同じ状態に戻すには、[この環境内のスナップショットに接続] をクリックします。
注意
このオプションを選択した場合、この環境を現在使用しているユーザーが切断され、それらのユーザーの作業が失われることがあります。 環境が使用中であるという警告メッセージが表示されないことを確認します。
現在の状態で環境に接続し、テストの実行時に取得されたスナップショットに戻らないようにするには、[現在の状態で環境に接続] をクリックし、[接続] をクリックします。
注意
この場合も、この環境に接続している他のユーザーが切断されることがありますが、環境の状態は変更されません。
ライブラリ共有に格納済みの環境のコピーがある場合、その環境のコピーを作成して接続できます。 この方法は、環境が現在使用中の場合、またはテスト担当者が環境を使用しないようにする場合に使用します。 環境のコピーを作成してそのコピーに接続するには、[この環境の新しいインスタンスに接続] をクリックします。
注意
環境のコピーを作成する場合、作成に時間がかかり、プロジェクト ライブラリ共有のディスク容量を大量に使用する可能性があります。 この環境のコピーが、テスト担当者の環境のコピーと同時に開始される場合、ネットワーク分離環境を作成する必要があります。 環境の詳細については、「仮想環境の作成」を参照してください。
バグから仮想環境のスナップショットに接続するには、Microsoft テスト マネージャー を使用して [バグの検証] ビューからバグを開くか、Microsoft Visual Studio 2010 のチーム エクスプローラー ビューからバグを開きます。 次に、バグの [詳細] タブにある環境のスナップショットへのリンクをクリックします。
[環境に接続] ダイアログ ボックスが表示されます。 前の手順と同様に、適切なオプションを選択します。 環境が使用中としてマークされている場合、[環境に接続] ダイアログ ボックスに警告メッセージが表示されます。
注意
開発者は、バグ内の問題を再作成して問題をすばやく解決できるように、バグから仮想環境に接続できます。 環境をスナップショットに復元すると、スナップショットに含まれるコンピューター間のネットワーク接続の動作が停止し、スナップショットを取得した時点で処理中だったトランザクションが失敗することがあります。 バグの再現がスナップショットの取得時に開かれてアクティブになっていた TCP 接続に依存する場合は、バグを再現できないことがあります。