メッセージ プロキシをデプロイしたくない場合 ( 推奨するアプローチについては「メッセージ プロキシからのトラフィックの記録」を参照)、プロキシのトラフィック記録機能でその場で HTTP、 JMS、および MQ トラフィックを記録できます。メッセージ プロキシのように、これらのプロキシは複数のエンドポイントを通して HTTP、 JMS、および MQ のライブトラフィックを同時にキャプチャできます。
プロキシのトラフィック記録機能は、アプリケーションの実行として、指定したトランスポート上のトラフィックをモニターできます。Virtualize はトラフィックのリクエストとレスポンスを「リスン」します。正当なリクエスト/ レスポンスのペアのトラフィック ファイルをビルドします。このトラフィックはその後、キャプチャした振る舞いを仮想化する仮想アセットの生成およびデプロイに使用されます。(キャプチャしたトラフィックに基づいて着信リクエスト メッセージに関連する仮想化したレスポンスを返します)。
JMS、 MQ、 HTTP、 HTTPS (SSL)、ベーシック、ダイジェスト、および Kerberos 認証がサポートされています。 NTLM はサポート対象外です。
HTTP のチャンキングと continue ヘッダーはサポートされません。
アプリケーションの振る舞いの仮想化には、3 つの主なステップがあります。
- トラフィックをファイルにキャプチャします。Virtualize に接続方法とモニター対象を通知します。モニタリングを有効にして、Virtualize はキャプチャしたリクエストとレスポンスからトラフィック ファイルをビルドします。
- トラフィック ファイルからメッセージ レスポンダーを作成します。
- これらのメッセージ レスポンダーが仮想アセットとして自動的にデプロイされたことを確認します。
トラフィックの記録
1 つ以上のエンドポイント間でライブ トラフィックを同時にキャプチャするには、次の操作を行います。
- [トラフィックの記録] ウィザードを開きます (このウィザードの開き方はいくつかあります。[ファイル] メニュー > [新規] から、[新規] ツールバーボタン > [その他] > [Virtualize] > [トラフィック] > [トラフィックの記録] から、または [新規] ボタンのドロップダウンメニューから開くことができます)。
- トラフィックを記録したいエンドポイントごとに以下を設定します。
- [トラフィックの記録におけるプロキシの設定] ダイアログで、[追加] をクリックしてウィザードを開きます。すでに構成した接続の情報が事前に投入されています。
- [プロキシ タイプ] で、任意のトランスポート (HTTP、 JMS、MQ) を選択します。
- 選択したトランスポートのプロキシ設定をします。
- JMS と MQ の設定は、メッセージ プロキシで使用された設定と同じです。詳細については、「JSM の設定」および「MQ の設定」を参照してください。
- HTTP 設定は、メッセージ プロキシで使用された設定と異なります。詳細については、「HTTP 用プロキシのトラフィック記録機能の構成」を参照してください。
- [トラフィック ファイル] フィールドで、このトラフィックをキャプチャするために作成されるトラフィックファイルの保存先を指定します。後でこのトラフィック ファイルを使用して、キャプチャしたライブ トラフィックを表現する仮想アセットを生成できます。 ファイル名を指定するとき、%d (現在の日付) や %t (現在の時刻) といった変数を使用できます。
- トラフィック ファイルにどのようにトラフィック データを記録するかを指定します。
- [新規セッション データの追加] は、既存のトラフィック ファイル ([トラフィック ファイル] フィールドで指定されたファイル) に、新規トラフィック データを追加します。指定したファイルが存在しない場合、新しいファイルが作成されます。
[セッションデータの上書き] は、既存のトラフィック ファイル ([トラフィック ファイル] フィールドで指定されたファイル) に、トラフィック データを上書きします。指定したファイルが存在しない場合、新しいファイルが作成されます。
- [OK] をクリックします。
- テスト対象アプリケーションから、記録したいトラフィックを生成します。
- [終了] をクリックします。
ライブ トラフィックがキャプチャされているとき、タブを切り替えて各エンドポイントのリクエストとレスポンスを参照できます。次のスクリーンショットは、 3 つの異なるエンドポイントで同時にキャプチャされているトラフィックです。
記録したトラフィックの仮想化
トラフィックを記録したら、次の手順で仮想アセットを作成し、デプロイできます。
- 作成されたトラフィック ファイルからメッセージ レスポンダーを作成します。詳細については、「トラフィック ファイルからのメッセージ レスポンダーの作成 : 概要」を参照してください。
- メッセージ レスポンダーが仮想アセットとして自動的にデプロイされたかを確認します。詳細については、「仮想アセットのデプロイ」を参照してください。
HTTP 用プロキシのトラフィック記録機能の構成
このセクションでは、HTTP 用プロキシのトラフィック記録機能を構成する方法について説明します。配置可能なメッセージプロキシの HTTP 構成とは異なります (「HTTP リバース プロキシの設定」に記載)。セクションの内容:
HTTP、 HTTPS (SSL)、ベーシック、ダイジェスト、および Kerberos 認証がサポートされています。 NTLM はサポート対象外です。
HTTP 用プロキシのトラフィック記録機能の構成
プロキシの記録ウィザードで次の手順で HTTP 設定を指定します。
- [プロキシ接続設定] ダイアログの [プロキシ タイプ] で[HTTP] を選択します。
- 適切な HTTP 設定をします。
- サーバーサイド SSL を使用する場合、[サーバー サイド SSL の有効] をオンにします。
- 双方向 SSL のために、 [クライアント サイド SSL の有効化] をオンにし、[証明書] と[秘密鍵] を設定します。[クライアントサイト SSL の有効化] をオンにすると、デフォルトでサーバーサイド SSL が有効になります。
サーバーサイド SSL の設定
SSL の性質のため、 Virtualize の HTTP 記録用プロキシは、自身の認証局によって署名された動的なサーバー証明書を生成します。 この動的なサーバー証明書を受け入れるために、HTTPS 上にリクエストを生成しているクライアントはすべての証明書を信頼するよう設定する必要があります。次の操作を行います。
- Virtualize のサーバー証明書の設定で [すべての証明書を信頼] がオンになっている([Parasoft] > [設定] > [セキュリティ] で確認できます)、または、サービスのサーバー証明書が Virtualize の CAcert ファイルに適切に追加されていることを確認します ( 詳細については、「HTTPS でデプロイされたサービスの使用」を参照してください)。
双方向 SSL の設定
SSL の性質のため、 Virtualize の HTTP 記録用プロキシは、自身の認証局によって署名された動的なサーバー証明書を生成します。この動的なサーバー証明書を受け入れるために、HTTPS 上にリクエストを生成しているクライアントはすべての証明書を信頼するよう設定する必要があります。次の操作を行います。
- Virtualize のサーバー証明書の設定で [すべての証明書を信頼] がオンになっている([Parasoft] > [設定] > [セキュリティ] で確認できます)、または、サービスのサーバー証明書が Virtualize の CAcert ファイルに適切に追加されていることを確認します ( 詳細については、「HTTPS でデプロイされたサービスの使用」を参照してください)。
- クライアント証明書のキーストア ファイルがあることを確認します (また、クライアント証明書と秘密鍵が異なるキーストアに格納されている場合は、プライベート キーストア ファイルがあることも確認します)。同様に、関連するキーストア パスワード、キーストア タイプの情報、秘密鍵のパスワード、および証明書/ 秘密鍵に使用されるエイリアスの名前を確認します。
トラフィックのキャプチャ
サーバーサイドまたは双方向 SSL を使用するサービスから HTTPS トラフィックをキャプチャするトラフィック ファイルを生成するには、上述のトラフィックのキャプチャに記載のようにウィザードで設定します。
HTTP ウィザードで適切な SSL オプションを有効にします。
- サーバーサイド SSL のために、 [サーバーサイド SSL の有効化] をオンにします。
- 双方向 SSL のために、 [クライアント サイド SSL の有効化] をオンにし、[証明書] と[秘密鍵] を設定します。[クライアントサイト SSL の有効化] をオンにすると、デフォルトでサーバーサイド SSL が有効になります。
テスト対象アプリケーションの設定
テスト対象アプリケーションが、記録したトラフィックを表現する仮想アセットにアクセスするよう構成するには、次の操作を行います。
- クライアント アプリケーションがブラウザーではない場合: Virtualize の「プロキシのトラフィック記録機能」を実行しているホストとポートを向くように、クライアント アプリケーションを修正します。 たとえば、アプリケーションを realapp.parasoft.com:80 で実行していて、プロキシを mymachine.parasoft.com:44 で実行していると仮定します (ウィザードで指定したように)。 クライアント アプリケーションが realapp.parasoft.com:80 ではなく、mymachine.parasoft.com:44 を向くように設定して、トラフィックがプロキシを通過するように強制します。
- Web アプリケーションに対するトラフィックの生成にブラウザーを使用している場合:
- アプリケーションが認証を必要としない場合、もしくはベーシック認証かKerberos 認証を使用する場合、ブラウザーのプロキシにmymachine.parasoft.com:44 を設定します。 この設定は、トラフィックを「プロキシのトラフィック記録機能」にリダイレクトし、トラフィックを記録します。
アプリケーションがダイジェスト認証を必要とする場合、ブラウザーのプロキシは設定しないでください。代わりに、ブラウザーが指している URL を修正します。言い換えると、http://realapp.parasoft.com/mypage.html を使用する代わりに、http://mymachine.parasoft.com:44/mypage.html を使用します。こうすることで、トラフィックは「プロキシのトラフィック記録機能」を通して転送されます。