このセクションの内容:
はじめに
Environment Manager は、テスト環境のインスタンスを迅速に構成およびプロビジョニングするための Parasoft Continuous Testing Platform (CTP) のインターフェイスです。Jenkins 用の Environment Manager プラグインを使用すると、ソフトウェア デリバリー パイプライン全体の中で、自動化された継続的テストを行うために必要なさまざまなアクションを構成できます。以下を行うビルド ステップを設定できます。
- 自動テストに必要な特定の状態に環境をセットアップする
- 環境および関連するアセットを別の Virtualize サーバー (Docker などのコンテナー技術によって動的にセットアップされたサーバーを含む) にレプリケートする
- Parasoft テスト シナリオ ジョブ (特定の環境設定で実行されるテスト スイート) を実行する
- 後続のテストが常にクリーンな状態から開始できるよう、「汚れた」テスト環境を破壊する
- Virtualize サーバーを CTP から切断して、不要な接続を削除します。
- テスト実行結果を Parasoft DTP にパブリッシュします。
要件
- CTP 2.7.4 以上
- Virtualize 9.9.4 以上
- Jenkins 1.625.3 以上
- JUnit Plugin v.1.10
- DTP 5.4.0 以上 (テスト実行の XML レポートを DTP にパブリッシュする場合)
- DTP 5.4.2 以上 (テスト実行環境情報を DTP にパブリッシュする場合)
設定
各 Jenkins サーバーは 1 つの CTP インスタンスと通信しますが、複数の Jenkins サーバーが同じ CTP インスタンスと通信することもできます。
- [Manage Jenkins] > [Configure System] を選択します。
- Parasoft Environment Manager エリアに Environment Manager URL、ユーザー名、パスワードを入力します。[Test Connection] をクリックすると、Jenkins が正常に Environment Manager と通信できるかを確認できます。
- テスト実行結果を DTP にパブリッシュするためのビルド ステップを追加する場合は、Parasoft DTP セクションで DTP サーバーの URL、ユーザー名、およびパスワードを指定します。
ジョブへの Environment Manager ビルド ステップの追加
Jenkins のジョブには任意の数の Environment Manager ビルド手順を追加できます。
- 設定するジョブを開いて [Configure] をクリックします。
- ビルド エリアで [Add build step] をクリックし、利用可能な Parasoft Environment Manager ビルド手順の 1 つを選択します。
Deploy an environment | テストに必要な状態に環境をセットアップし、オプションとして環境および関連アセットを別の Virtualize サーバー (Docker などのコンテナー技術によって動的にセットアップされたサーバーを含む) にレプリケートします。「Configuring a Deploy an Environment Build Step」を参照してください。 |
---|---|
Execute a test scenario job | テスト シナリオ ジョブ (特定の環境設定で実行されるテスト スイート) を実行します。「Configuring an Execute a Test Scenario Job Build Step」を参照してください。 |
Destroy an environment | 後続のテストが常にクリーンな環境から開始できるよう、「汚れた」テスト環境を削除します。「Configuring a Destroy an Environment Build Step」を参照してください。 |
Disconnect a Virtualize server | Environment Manager から指定された Virtualize サーバーの登録を削除します。「Configuring a Disconnect a Virtualize Server Build Step」を参照してください。 |
Deploy an Environment ビルド手順の設定
このビルド手順は、テストに必要な特定の状態に環境をセットアップします。オプションとして、環境および関連するアセットを別の Virtualize サーバー (Docker などのコンテナー技術によって動的にセットアップされたサーバーを含む) にレプリケートできます。「Deploy an environment」ビルド手順を追加すると、いくつか新しいフィールドが利用可能になります。
ビルド手順を設定するには、次の操作を行います。
- セットアップ (またオプションとして別の Virtualize サーバーにレプリケート) するシステム、環境、インスタンスを選択します。
- 環境と関連アセット (仮想アセット、プロキシ、JDBC コントローラーなど) をレプリケートする場合、次の操作を行います。
- [Copy the environment and assets before provisioning] を有効化します。
- (任意) 新しい環境の名前を指定します。このフィールドが空の場合、名前は自動的に割り当てられます。変数を使用することもできます。例:
Env${BUILD_NUMBER}
- レプリケート先の Virtualize サーバーを指定します。どのオプションを選択し、設定するかについては、手順の下のガイドラインを参照してください。
- セットアップの前に環境をコピーし、関連データ リポジトリも複製するには、次の操作を行います。
- [Duplicate associated data repositories before provisioning] を有効化します。
データ リポジトリのコピー先を指定します。以下のオプションを設定できます。
On the current Data Repository server 現在リポジトリがあるのと同じ Data Repository サーバーに新しくコピーを作成します。このオプションを選択した場合、Data Repository のポート、ユーザー名、パスワードも指定します。 To a Data Repository server on the same host as the target Virtualize sever [Duplicate associated data repositories before provisioning ] オプションの上のエリアで指定されたレプリケート先の Virtualize サーバーに新しくコピーを作成します。このオプションを選択した場合、Data Repository のポート、ユーザー名、パスワードも指定します。 To a Data Repository server on a specific host 指定された Data Repository に新しくコピーを作成します。このオプションを選択した場合、Data Repository のホスト、ポート、ユーザー名、パスワードも指定します。
- セットアップが失敗した場合にジョブを中止するには、[Abort on provisioning failure] を有効化します。
環境コピー オプションの選択
プラグインには、さまざまなニーズに対応できるよう 3 つの環境コピー オプションがあります。最初のオプションでは、ジョブ実行時に Virtualize サーバーが Environment Manager に登録されている必要があります。2 番目と 3 番目のオプションでは、Virtualize サーバーが登録されるのを待つため、Docker などのコンテナー技術によって動的に Virtualize サーバーをデプロイする場合に適しています。
To a Virtualize server registered with EM | すでに Environment Manager に登録されている Virtualize サーバーにコピーする場合、このオプションを使用します。 このオプションを有効化し、Virtualize サーバーの下にあるサーバーを選択します。ジョブ実行時にこのサーバーが Environment Manager に登録されていなかった場合、ジョブは失敗します。 |
---|---|
To a Virtualize server matching host | 指定されたホストで Virtualize を待機し、サーバーが Environment Manager に登録されたらコピー操作を行うようビルト手順を設定できます。 Virtualize サーバーがまだ Environment Manager に登録されていない場合、たとえば Docker などの自動化プロセスによってサーバーが立ち上げられる場合にこのオプションを使用します。 このオプションを有効化する場合、期待されるホスト IP を指定します。 |
To a Virtualize server matching name | 指定されたサーバー名の Virtualize サーバーを待機し、サーバーが Environment Manager に登録されたらコピー操作を行うようビルト手順を設定できます。 Virtualize サーバーがまだ Environment Manager に登録されていない場合、たとえば Docker などの自動化プロセスによってサーバーが立ち上げられる場合にこのオプションを使用します。 このオプションを有効化した場合、期待されるサーバー名 (Environment Manager への登録に使用される名前) を指定します。 |
Virtualize サーバーが動的 IP を使用する場合
Virtualize サーバーの名前が変わらないかぎり、指定された名前 (Environment Manager への登録に使用される名前) を持つ Virtualize サーバーにコピーするようビルド手順を設定できます。指定された名前の Virtualize サーバーが Environment Manager に登録されていない場合、ビルド手順は待機し、サーバーが登録されたらコピー操作を行います。
Execute a Test Scenario Job ビルド手順の設定
このビルド手順は、テスト シナリオ ジョブ (特定の環境設定で実行されるテスト スイート) を実行します。テスト実行結果を DTP にパブリッシュすることもできます。
以下のオプションを設定できます。
- [By name] でテストシナリオの名前を指定するか、[From list] からテストシナリオを選択します。[By name] が有効になっている場合は、Jenkins 環境変数 (例:
${JOB_NAME}
) を使用して、Jenkins ジョブと同じ名前を使用できます。 - デフォルトでは、[Abort the build on test failure] は無効になっています。テストが失敗した場合にビルドを停止する場合は、このオプションを有効にします。
- [Abort the build if it's stuck] を有効にし、[Timeout minutes] フィールドに、ジョブがタイムアウトするまで Jenkins が待機する時間を分で指定します。
- 結果を DTP で表示できるようにする場合は、[Publish test execution results to DTP] を有効にし、DTP プロジェクト、ビルド ID、およびセッション タグを指定します。
- SOAtest が DTP に公開するときに、実行環境設定 (exec.env) をテスト結果に含める場合は、[Append variable set environment to session tag if configured] を有効にします。これにより、実行環境に応じてテスト データを集約し、DTP ウィジェットやレポートに表示できるようになります。例:
プロジェクト、ビルド ID、セッション タグ、およびテストおよび開発成果物に関連付けられたその他のメタデータの詳細については、DTP ドキュメントを参照してください。
Destroy an Environment ビルド手順の設定
このビルド手順は、後続のテストが常にクリーンな環境から開始できるよう、「汚れた」テスト環境を削除します。「Destroy an environment」ビルド手順を追加すると、いくつか新しいフィールドが表示されます。
ビルド手順を設定するには、次の操作を行います。
- [System] メニューから、破棄する環境を含むシステムを選択します。
- 破棄する環境の名前を入力します。まだ存在しない環境 (動的にセットアップされる環境) の名前を入力できます。変数を使用することもできます。例:
Env${BUILD_NUMBER}
Disconnect a Virtualize Server ビルド手順の設定
このビルド手順は、Environment Manager から指定された Virtualize サーバーの登録を削除します。「Disconnect a Virtualize server」ビルド手順を追加すると、いくつか新しいフィールドが表示されます。
Virtualize サーバーを切断するには、いずれかのオプションを有効化し、フィールドにホスト IP またはサーバー名を指定します。
ビルド手順の進捗と結果の確認
実行中のジョブのコンソール出力を参照するには、ビルド履歴エリアの進捗バーをクリックします。すると、ステータス詳細と関連する Environment Manager ホストおよび環境へのリンクが表示されたページが開きます。完了済みのジョブを参照するには、ビルド履歴エリアのコンソール出力プルダウンを使用します。
変更ログ
バージョン | 変更 | FR/PR ID |
---|---|---|
2.18 | テスト シナリオ実行ジョブのタイムアウト機能 | CTP-4581 |
2.17 | CTP ジョブが Jenkins の Environment Manager プラグインに表示されない | CTP-5648 |
2.16 | Jenkins のコンソール出力とステータス ページに、ジョブの一部として実行される .tst ファイルの名前とステータスを表示する機能を追加 | CTP-4550 |
2.15 | execEnv が追加された CTP ジョブからのレポートを DTP が拒否した | CTP-4766 |
2.14 | EM プラグインを使用する Jenkins ジョブが実行状態のままになる | CTP-4559 |
2.13 | 失敗した TST でもビルド ステータス ページに失敗が表示されない | CTP-4549 |
2.12 | 動的デプロイ コンソールの出力を改善 | CTP-4540 |
2.11 | ジョブ内の TST の SKIPPED ステータスを処理 | CTP-4508 |
2.10 | DTP にパブリッシュするときに変数セット環境をセッション タグに追加するオプション | CTP-4394 |
2.9 | テスト シナリオ ジョブが失敗した後もビルド ステップを続行する機能 | CTP-4307 |
2.8 | テスト実行 XML レポートを DTP にアップロードする | |
2.7 | Parasoft Environment Manager プラグインで、ユーザーが CTP ジョブ名を Jenkins 環境変数にパラメータ化できるようにする | CTP-3942 |
2.6 | テスト実行ジョブの API クエリー パフォーマンスを向上 | CTP-4082 |
2.5 | ビルド ステップのドロップダウンで 100 を超えるテスト実行ジョブを表示できない問題を修正 | CTP-2841 |