このセクションの内容:
はじめに
Parasoft HTTP Simple Mocking Tool を使用すると、仮想アセットはテスト対象アプリケーションとバックエンド コンポーネント間のトランザクションを学習して複製できます。このツールは、プロキシを使用せずにトラフィックを記録およびシミュレートするのに使用できます。
前提条件
- Parasoft Virtualize 9.10.x 以降
インストール
ツールは UI またはコマンドラインからインストールできます。
UI からのインストール
- [Parasoft ] > [設定] を選択し、[システム プロパティ] をクリックします。
- [JAR の追加] をクリックし、HTTPSimpleMockingTool.jar ファイルを選択します。
- [適用] をクリックします。
- Virtualize を再起動します。
コマンドラインからのインストール
設定プロパティ ファイルの system.properties.classpath
プロパティに HTTPSimpleMockingTool.jar ファイルを追加します。例:
system.properties.classpath=<PATH_TO_JAR>/HTTPSimpleMockingTool.jar
または、HTTPSimpleMockingTool.jar ファイルを VirtualAssets/system_jars フォルダーに追加します。フォルダーがまだ存在しない場合は作成します。次の API 呼び出しを実行して jar をリロードします。
http://<VIRTUALIZE_SERVER_HOST>:<VIRTUALIZE_SERVER_PORT>/soavirt/api/<VERSION>/preferences/systemProperties/reload
使用方法
HTTP Simple Mocking Tool は、Message Responder ツールの出力として使用できます。送信レスポンスのペイロードに連結されます。
- [Virtual Assets] プロジェクトを右クリックし、[新規追加] > [仮想アセット (.pva) ファイル] を選択します。
- .pva ファイルの名前を指定し、[次へ] をクリックします。
- [空] フォルダーを選択し、[次へ] をクリックします。
- 新規レスポンダー スイートを右クリックし、[新規追加] > [レスポンダー] をクリックします。
- [Literal Message Responder] を選択し、[終了] をクリックします。
- 新しく作成された Literal Message Responder の [レスポンス] タブで、一致するリクエスト/レスポンスのペアがトラフィック ファイルに見つからず、実サービスを記録に利用できない場合に備えて、レスポンダーのデフォルト メッセージを追加します。
- 変更後のレスポンダーを保存します。
- レスポンダーを右クリックし、[出力の追加...] をクリックします。
- [発信レスポンス] > [ペイロード] を選択し、[HTTP Simple Mocking Tool] をクリックします。このツールは、発信レスポンスのペイロードに追加する必要があります。その他のオプションは適用できません。
- ツールのオプションを設定します。「Tool Configuration」を参照してください。
ツールを設定し、関連付けられた仮想アセットを Virtualize サーバーにデプロイしたら、ツールをモック化に使用できます。ツールを使用してトラフィックを記録し仮想化する準備ができたら、クライアントから仮想アセット デプロイメント設定に表示されている仮想アセットのエンドポイントにリクエストを送信します。
仮想アセットはエンドポイントに送信されたリクエストを処理し、ツールに転送します。ツールは指定されたトラフィック ファイル内で条件に一致するリクエスト/レスポンス ペアを探します。
一致するものが見つかった場合、リクエストがクライアントに送信されます。一致するものが見つからなかった場合、ツールは実サービスにメッセージを転送し、リクエスト/レスポンス ペアの記録を試みます。記録できない場合 (サービスが応答しない場合など)、ツールに関連付けられたメッセージ レスポンダーが、ユーザーによって指定されたデフォルトの「キャッチ オール」メッセージを使用してクライアントに応答します。
次の図は、この動作を表しています。
特定のトラフィック パターンをリクエスト比較プロセスから除外したい場合、「Tool Configuration」で説明されている [Exclude Pattern] フィールドを使用します。たとえば、次のようなリクエストがあるとします。
POST /parabank/services/LoanProcessor HTTP/1.1 soapaction: "" connection: keep-alive cache-control: no-cache pragma: no-cache accept: */* user-agent: Apache CXF 2.4.2 content-type: text/xml; charset=UTF-8 content-length: 412 host: localhost:8080 <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:requestLoan xmlns:ns2="http://service.parabank.parasoft.com/"> <ns2:loanRequest> <requestDate>2016-06-07T15:20:52.410-07:00</requestDate> <customerId>12212</customerId> <availableFunds>1510.67</availableFunds> <loanAmount>100</loanAmount> <downPayment>10</downPayment> </ns2:loanRequest> </ns2:requestLoan> </soap:Body> </soap:Envelope>
requestDate
および availableFunds
要素をリクエストの比較から除外するには、次のように入力します。
(<requestDate>.*</requestDate>)|(<availableFunds>.*</availableFunds>)
ツールの設定
以下の設定を行うことができます。
Backend Host | (必須) トラフィック ファイル内に一致するレスポンスが見つからなかった場合にリクエストを転送するホストを指定します。 |
---|---|
Backend Port | トラフィック ファイル内に一致するレスポンスが見つからなかった場合にリクエストを転送するポートを指定します。デフォルト値は |
トラフィック ファイル パス | リクエスト/レスポンス ペアが記録されているトラフィック ファイルの場所を指定します。デフォルト値は |
Exclude Pattern | リクエスト比較プロセスから除外するトラフィックのパターンを表す正規表現を指定します。たとえば、日付を除外するには、次のような正規表現を指定します。 |
Debug | Event Log を使用して処理の詳細およびエラー情報を通信するかどうかを指定します。デフォルトは |
サード パーティのコンテンツ
このツールには、サード パーティのソフトウェアは含まれません。