このセクションの内容:
はじめに
Parasoft RabbitMQ Transport Extension は、Parasoft SOAtestのメッセージクライアントツールに適切な RabbitMQ トランスポートのサービスを追加します。Rabbit MQ は、軽量で信頼性が高く、スケーラブルで、ポータブルなメッセージ ブローカーです。Rabbit MQ を使用するアプリケーションはプラットフォームに依存しない、ワイヤレベルのプロトコルである Advanced Message Queuing Protocol (AMQP) を使用して通信を行います。
関連する拡張機能 RabbitMQ Listener を使用すると、Parasoft Virtualize の仮想アセットは RabbitMQ 上でメッセージの受信と応答を行うことができます。
前提条件
- SOAtest 9.9.0 以降
インストール
Parasoft RabbitMQ Transport は UI またはコマンドラインからインストールできます。
UI からのインストール
- [Parasoft ] > [設定] を選択し、[システム プロパティ] をクリックします。
- [JAR の追加] をクリックし、 rabbitmqtransport.jar を選択します。
- [適用] をクリックします。
- SOAtest/Virtualize を再起動します。
jar ファイルが SOAtest のクラスパスに追加されると、必要なすべての依存ライブラリがロードされます。
コマンドラインからのインストール
設定プロパティ ファイルで、system.properties.classpath プロパティに rabbitmqtransport.jar ファイルを追加します。例:
system.properties.classpath=<PATH_TO_JAR>/rabbitmqtransport.jar
クラスパスを変更すると、必要なすべての依存ライブラリがロードされます。
使用方法
RabbitMQ Transport は、主にメッセージ クライアント ツール (SOAP Client、EDI Client、Messaging Client など) で使用されます。トランスポートの設定は Messaging Client' の [トランスポート] タブで行います。メッセージ クライアントで RabbitMQ Transport を使用するには、[トランスポート] メニューから [RabbitMQ (AMQP)] を選択し、表示されるオプションを設定します。
以下のオプションを設定できます。多くのオプションは RabbitMQ の設定と同一です。詳細については「Rabbit MQ documentation」を参照してください。
接続設定
ホスト | Rabbit MQ サーバーのホスト名を指定します。デフォルト値は |
---|---|
ポート | Rabbit MQ サーバーのポートを指定します。デフォルト値は |
SSL の使用 | SSL を有効/無効にします。デフォルトは |
ユーザー名 | RabbitMQ のユーザー名を指定します。デフォルト値は |
パスワード | RabbitMQ のパスワードを指定します。デフォルト値は |
Virtual Host | 接続する Rabbit MQ の仮想ホストを指定します。デフォルトは |
Automatic Recovery | 接続エラー時にトランスポートが自動的にリカバリーを試みるようにするには、 |
Topology Recovery | トポロジーのエラーが発生したとき (エクスチェンジまたはキューのエラーなど) にリスナーが自動的にリカバリーを試みるようにするには、 |
パブリッシュ設定
エクスチェンジ名 | メッセージの送信先エクスチェンジを指定します。デフォルト値は |
---|---|
ルーティング キー | メッセージの送信に使用されるルーティング キーを指定します。 |
必須 | メッセージの mandatory フィールドに true または false を指定してパブリッシュするかを指定します。デフォルトは |
即時 | RabbitMQ 3.0 以上ではサポートされていません。メッセージの immediate フィールドに true または false を指定してパブリッシュするかを指定します。デフォルトは |
基本プロパティ
App ID | メッセージを生成したアプリケーションの識別子を指定します。 |
---|---|
クラスター ID | AMQP 0.9.1 で非推奨になりました。クラスター間のルーティング識別子を指定します。 |
コンテンツ エンコーディング | メッセージ コンテントのエンコーディングを指定します。MIME コンテント タイプ (gzip など) を指定します。 |
コンテンツ タイプ | メッセージのコンテント タイプを指定します。MIME コンテント エンコーディング (application/json など) を指定します。デフォルトでは、リクエスト メッセージのコンテント タイプが使用されます。 |
応答条件 ID | 関連するメッセージ (リプライの元のメッセージなど) の ID を指定します。 |
デリバリー モード | メッセージをディスクに永続化するかどうかを指定します。非永続化の場合は |
有効期限 | メッセージが削除されるまでの有効期間 (ミリ秒単位) を指定します。 |
ヘッダー | メッセージ ヘッダーを指定します。カンマで区切られたキー/値のペアのリストを入力します。 例:
|
メッセージ ID | メッセージ識別子を指定します。 |
優先度 | メッセージの優先度を指定します。 |
ReplyTo | レスポンスを送信するキューの名前を指定します。 |
タイムスタンプ | メッセージのタイムスタンプを設定する方法を指定します。現在時刻を使用するには |
タイプ | メッセージ タイプを指定します (イベントのタイプやこのメッセージが表すコマンドなど)。 |
ユーザー ID | オプションのユーザー ID を指定します。 |
処理設定
応答を待機 | リプライ メッセージを待機する必要がある場合、
|
---|---|
メッセージ送信前にコンシューマーを作成 | メッセージを送信する前にコンシューマーを作成する必要がある場合、 |
キュー名 | リプライ キューを指定します。デフォルト値は |
バインディング エクスチェンジ | 一時キューがバインドされるエクスチェンジを指定します。 |
Binding Routing Key | 一時キューをエクスチェンジにバインディングするときに使用するバインディング キーを指定します。 |
リプライのタイムアウト | リプライのタイムアウトをミリ秒単位で指定します。デフォルト値は |
レスポンス応答条件の設定
リプライ メッセージを待機するよう RabbitMQ を設定した場合、これらの設定によって、レスポンス応答条件パラメーターを指定してリプライ メッセージをフィルタリングできます。応答条件が設定されていない場合 (すべてのフィールドが空の場合)、フィルタリングは行われず、トランスポートは利用可能な最初のリプライ メッセージを処理します。応答条件が設定されている場合、フィールドのエントリは上から下に評価されます。最初に一致したフィールドが応答条件として使用されます。
レスポンス応答条件 ID とリクエストメッセージ ID を比較 | 応答条件 ID がパブリッシュされたメッセージのメッセージ ID と一致する場合を除き、すべてのレスポンスを無視する場合、 |
---|---|
レスポンス応答条件 ID とリクエスト応答条件 ID を比較 | 応答条件 ID がパブリッシュされたメッセージの応答条件 ID と一致する場合を除き、すべてのレスポンスを無視する場合、 |
応答条件 ID 値の比較 | このフィールドに値を指定すると、指定された値と応答条件 ID が一致するもの以外のすべてのレスポンスが無視されます。 |
接続の管理設定
接続をキープ アライブ/ テスト実行後に接続をクローズする | RabbitMQ Transport は、複数のアクティブな接続の使用を許可します。接続設定がすでに開かれている接続と一致する場合、接続が再利用されます。接続設定が異なる場合、新しい接続が作成されます。 テストを「キープ アライブ」に設定すると ([接続をキープ アライブ] が有効な場合)、テスト実行の最後にSOAtest は接続に対してclose() を呼び出しません。 接続をクローズするには、テストは「接続クローズ」として設定されていなければなりません ([テスト実行後に接続をクローズする] を有効化)。SOAtest は最後に使用された接続、つまりテストに使用された接続をクローズします。 ビルトインの HTTP トランスポートとは異なり、カスタム トランスポートには、すべての実行が完了したときに開かれている接続を最終的にクリーンアップする手段はありません。代わりに、ユーザーが最後のテストの接続を「接続クローズ」としてマークする必要があります。さもないと、接続は開かれたままになります。 たとえば、以下のシナリオでは、テスト実行が終わった後、両方の接続がオープンのままになります。 Settings A (キープアライブ) Settings B (キープアライブ) Settings A (キープアライブ) Settings B (キープアライブ) これを修正するには、各設定の最後のテストを「接続クローズ」としてマークします。 Settings A (キープアライブ) Settings B (キープアライブ) Settings A (接続クローズ) Settings B (接続クローズ) |
---|
サード パーティのコンテンツ
この拡張機能は、以下のサード パーティのコンテンツを含みます。
- RabbitMQ (Apache ライセンス)
その他のライセンスの詳細については、Parasoft Burp Suite Extensions の licenses フォルダーを参照してください。