自動ビルド、配置、およびテストのワークフロー
発行: 2016年7月
ビルド処理を実行する場合、Team Foundation Server でビルド、配置、テストのワークフローを使用してアプリケーションを配置およびテストできます。 これによって、1 つのビルド プロセスを使用して、アプリケーションのビルド、配置、およびテストをスケジュールし、実行できます。 ビルド、配置、テストのワークフローは Lab Management と連係して、ラボ環境にアプリケーションを配置し、ビルド処理の一部としてテストを実行するために使用します。
ラボ環境が SCVMM 環境である場合、テストの実行前に問題のない環境を自動的に作成し、テストが失敗した場合に環境の状態を保存するスナップショットを、ワークフローを使用して作成、復元できます。 これによって、前回のテスト実行によるラボ環境の変更から、各テストが影響を受けないようにできます。 また、バグを再現する場合に、テスト担当者が正確にそのラボ環境の状態を再現できるようになります。
必要条件
- Visual Studio Enterprise, Visual Studio Test Professional
次のシナリオでビルド、配置、テストのワークフローを使用できます。
ヒント
ビルド、またはビルドとテスト: ラボ環境に配置しないでドロップ フォルダーでアプリケーションをビルドしている場合、既定のビルド処理テンプレートを使用できます。詳細については、「ビルド プロセスに既定のテンプレートを使用」を参照してください。また、プロジェクトを配置せずにアプリケーションをテストする場合は、「ビルド プロセスでのテストの実行」を参照してください。
ビルド、配置、テスト - アプリケーションをビルドし、ラボ環境へアプリケーションを配置して自動テストを実行します。 このワークフローでは、ビルド処理の一部として、配置したアプリケーションに関し、テスト計画から一連のテストを実行できます。 このシナリオはビルド確認テストを実行する場合に一般的です。
配置およびテスト - このシナリオでは、新しいビルドがワークフローの間に作成されないことを除き、"ビルド、配置、テスト" のシナリオと同じです。 その代わりに、ワークフローはドロップ フォルダーから既存のビルドを使用します。
配置のみ – ワークフローの間に自動テストを実行することなく、ドロップ フォルダーからラボ環境に既存のビルドを配置します。 あるビルドがビルド確認テストに合格し、テスト チームに送信する準備ができた後で、テスト チームがワークフローの一部ではない追加の試験を実行できるように特定のビルドをテスト チームに送信する場合があります。 このシナリオは手動テストを実行する場合に一般的です。
配置およびテスト - このシナリオは、新しいビルドがワークフローの間に作成されることを除き、"配置のみ" のシナリオと同じです。
ビルド、配置、テストのワークフローは、Windows ワークフロー ファイルです。このファイルでは、ビルド定義がビルドを実行、アプリケーションを配置、テストを実行する方法が定義されます。 ビルド、配置、テストのワークフローは、ラボの既定のテンプレート (LabDefaultTemplate.11.xaml) というビルド プロセス テンプレートを選択して設定を構成することによって作成されます。 また、要件に応じて、ワークフロー向けにカスタマイズされたビルド プロセス テンプレートを作成できます。 ビルド コンピューター、テスト コンピューター、およびラボ環境を設定してから、ビルド定義を構成します。
ビルド、配置、テストのワークフローの配置設定は、ラボ環境の特定のコンピューターで実行する配置スクリプトを指定することによって、アプリケーションの配置方法を定義します。 各配置スクリプトを実行するラボ管理ロールを指定するか、またはラボ環境内の特定のコンピューターを指定できます。 配置スクリプトの作成は、ビルド、配置、およびテストのワークフローの設定の主要部分です。 配置スクリプトは、ビルドからラボ環境にファイルをコピーし、次に、インストール パッケージを実行します。
次の図は、ビルド、配置、テストのワークフローによってビルドが配置される方法を示します。
次の手順は、上の図に示されます。
ビルド、配置、テストのワークフローはビルドを開始し、次に、配置スクリプトを取得します。
ビルド定義は、格納場所にビルド ファイルをコピーします。
ワークフローは、特定のコンピューターまたはスクリプトが割り当てたコンピューターのロールの作業ディレクトリにある各配置スクリプトを実行します。
各配置スクリプトは、格納場所からビルド ファイルを取得します。
各配置スクリプトは、ラボ環境のマシンに指定したビルドのファイルをコピーするか、またはインストールします。
必須コンポーネント
ビルド、配置、テストのワークフローを設定する前に、次の手順を実行する必要があります。
Team Foundation ビルド サービスの構成
自分の Team Foundation Server の管理コンソールを使用してチーム プロジェクト コレクションのビルド構成を設定します。 ビルド構成を設定するときに、アプリケーションをビルドして配置するときに使用するビルド コントローラーとビルド エージェントを選択します。 ビルド構成のセットアップの詳細については、「ビルド コンピューターの構成方法」を参照してください。
テスト コントローラーの設定
テスト コントローラーをインストールし、チーム プロジェクト コレクションに登録します: ラボ環境での Test Controller の設定。
ラボ環境の設定
ラボ環境を設定します。 ラボ環境は、SCVMM 環境、または標準環境です。 ラボ環境を設定する場合、テスト エージェントは環境内の各コンピューターにインストールされます。 ラボ環境の作成の詳細については、「ラボ環境でのテスト」を参照してください。
ラボ環境のテスト計画から自動テストを実行する追加の手順
テスト計画からの自動テストを実行する前に、まずそのテスト計画のテスト ケースに自動テストを関連付ける必要があります。 テスト計画から自動テストを実行する場合、ラボ環境を使用する必要があります。 テスト計画を作成し、それに自動テストを関連付けるには、次のタスクを実行する必要があります。
テスト計画とテスト スイートを作成する: Microsoft Test Manager での手動テストの計画
テスト スイートから自動テストとテスト ケースを関連付ける: Microsoft テスト マネージャーでのテスト ケースの自動化
タスク
ビルド、配置、テストのワークフローを設定してアプリケーションを配置したり、ビルド処理の一部として、アプリケーションのテストを実行するには、次のトピックを使用します。
トピック |
説明 |
---|---|
ビルド、配置、テストのワークフローの配置スクリプトを作成する: アプリケーションを配置するには、まずビルド、配置、テストのワークフローの配置スクリプトを作成する必要があります。 配置スクリプトは、ラボ環境内の特定のコンピューターにビルドの一部をコピーします。 また、ビルドに Web 配置パッケージまたはインストール パッケージが含まれている場合、配置スクリプトは、パッケージを実行する必要があります。 |
|
ビルド、配置、テストのワークフローを作成する: 標準環境または SCVMM 環境で、ビルド、配置、およびテストのワークフローを設定できます。 SCVMM 環境を使用する場合、テストを実行する前に、ビルド処理を使用してスナップショットで環境を復元し、アプリケーションが配置された後にスナップショットを作成できます。 |
|
ワークフローをカスタマイズして、追加のビルド、配置、テストの要件に対応する: 既定のビルド プロセス テンプレートでは満たされない追加の要件がある場合、カスタム ビルド プロセス テンプレートを作成できます。 |
|
ビルド、配置、およびテストのワークフローの一部として、またはワークフロー完了後にテストを実行する: ビルド、配置、およびテストのワークフローの一部として自動テストを実行でき、また、ワークフローの完了後に手動テストと自動テストを実行できます。 |