このセクションでは、[パラメータライズされたメッセージを生成] ウィザードの [メッセージ グループ化の確認] ページでグループ化条件をカスタマイズする方法を説明します。
このセクションの内容:

グループ化のカスタマイズ: 概要

グループ化条件をカスタマイズするには、次の操作を行います。

  1. [グループ化条件] ダイアログを開きます ( [追加] または [複製] をクリックするか、既存のグループ化条件のエントリをダブルクリックします)。

  2. 必要に応じて、生成されるテスト クライアント名および/またはデータ セット名をカスタマイズします。




  3. [グループ化条件] タブで、必要に応じてグループ化条件を変更します。グループ化条件エントリごとに、以下を組み合わせてグループ化を指定できます。HTTP メソッド、URL パス、URL パラメーター、あるいはリクエスト ボディ。

    グループ化の方法説明
    HTTP Methods Grouping Configuration

    Virtualize: メッセージを処理するかどうかを決定する HTTP メソッドを指定します。 

    SOAtest: HTTP メソッドでメッセージをグループ化します。メソッドが混在するグループ (たとえば POST と GET など) が作成されるのを防ぐため、HTTP メソッド グループ化条件のカスタマイズは、自動的に無効化されます。

    URL Paths Grouping Configuration

    Virtualize: メッセージを処理するかどうかを決定する URL パスを指定します。

    SOAtest: URL パスでメッセージをグループ化します。

    URL Parameters Grouping Configuration

    Virtualize: メッセージを処理するかどうかを決定する URL パラメーターを指定します。応答条件の構成方法として、「値に関係なく特定のパラメーターを含むすべてのメッセージに一致する応答条件」または「特定の値が設定された特定のパラメーターを含むメッセージにだけ一致する応答条件」を構成できます。正確に一致する URL パラメーターだけがリクエストにある場合に応答条件を適用するかどうかも指定できます。

    SOAtest: メッセージを処理するかどうかを決定する URL パラメーターでメッセージをグループ化します。(設定された値にかかわらず) 特定のパラメーターを持つすべてのメッセージを含めることも、特定のパラメーターに特定の値が設定されているメッセージだけを含めることもできます。また、正確に一致する URL パラメーターだけがリクエストにある場合にメッセージを含めるかどうかも指定できます。

    Request Body Grouping Configuration

    Virtualize: メッセージを処理するかどうかを決定するメッセージ内の XPath を指定します。

     SOAtest: XPath を使用してメッセージをグループ化します。

    検出されたメッセージの詳細を参照するには、[メッセージの詳細] タブを開き、関連するメッセージ ブロックを選択します。

HTTP メソッドによるグループ化

HTTP メソッドによるグループ化条件は、 HTTP/HTTPS を介してアクセスされるアセットに適用されます。メソッドが混在するグループ (たとえば POST と GET など) が作成されるのを防ぐため、HTTP メソッド グループ化条件のカスタマイズは、自動的に無効化されます。  

HTTP メソッドの応答条件を構成するには、以下の操作を行います。

  1. [応答条件の有効化] チェックボックスをオンにします。
  2. 応答条件に使用する HTTP メソッドを指定します。
     


たとえば、GET、POST、PUT を指定した場合、レスポンダーはメソッド GET、POST、または PUT がある HTTP リクエストに一致します。  CONNECT、DELETE、HEAD などがある HTTP リクエストには一致しません。 

URL パス グループ化の構成

URL パスによるグループ化条件は、 HTTP/HTTPS を介してアクセスされるアセットに適用されます。

URL パスグループ化を構成するには、次の操作を行います。

  1. [応答条件の有効化] または [グループ化に使用] オプションを有効にします。
  2. 応答条件またはグループ化に使用するパスおよびエンドポイントを指定します。

たとえば、エンドポイントまだは仮想アセットが次のパスでデプロイされるものとします。

http://myserver:9080/MyAsset/MyPath 

また、グループ化条件として次のパスが指定されているものとします。 

/segment1/segment2/** 

以下の URL はこの応答条件に一致します。

http://myserver:9080/MyAsset/MyPath/segment1/segment2

http://myserver:9080/MyAsset/MyPath/segment1/segment2/

http://myserver:9080/MyAsset/MyPath/segment1/segment2/segment3?param1=value1&m2=value2

以下の URL は一致しません。

http://myserver:9080/MyAsset/MyPath/segment1/

http://myserver:9080/MyAsset/MyPath/segment3/segment1/segment2

Ant スタイルのワイルドカードを使用できます。 * は 1 個以上の文字に一致し、** は 1 つ以上のディレクトリに一致します。次のようにワイルドカードを使用します。

/**/abc matches /abc  or /this/that/abc

/abc/** /abc または /abc/this/that/theother に一致します。

/ab**/abc/d  に一致しません (1 個のアスタリスク /ab* を使用したかのように解釈されます)。/absolutely には一致します。

/**bc  は /0/abc に一致しません (1 個のアスタリスク /*bc を使用したかのように解釈されます)。/abc には一致します。

例 1: **/service/*

一致する一致しない

service/Repository
org/web/service/Entries
org/something/else/tools/stiff/service/Entries

org/web/service/foo/bar/Entries 

/org/web/service

例 2: org/parasoft/virtualize/**

一致する一致しない

org/parasoft/virtualize/tools/service

org/parasoft/virtualize/stuff

org/parasoft/somethingelse

例 3: org/parasoft/**/EM/*

一致する一致しない

org/parasoft/EM/Entries

org/parasoft/virtualize/soatest/tools/EM/Entries

org/parasoft/EM/foo/bar/Entries

例 4: 同様のパスに対して同じ方法

/v1/orders
/v1/orders/*

一致する一致しない

GET /v1/orders
GET /v1/orders/111-111-111

GET /v1/orders/111-111-111/1

URL パラメーターによるグループ化

URL パラメーターによるグループ化条件は、 HTTP/HTTPS を介してアクセスされるアセットに適用されます。パラメーターによる応答条件またはグループ化を設定するには、以下の操作を行います。

  1. [応答条件の有効化] または [グループ化に使用] オプションをオンにします。
  2. リクエストが指定された URL パラメーターに完全に一致する (過不足がない) 場合にだけ、応答条件またはグループ化を適用する場合、[ パラメーターのリストが正確に一致する場合にだけ応答条件に一致する] または [パラメーターのリストが正確に一致する場合にだけグループに含める ] をオンにします。オフにした場合、表にあるパラメーターに加えて他のパラメーターを持つリクエストも一致します。このオプションが有効でも無効でも、指定されたパラメーターがすべて揃っていないメッセージは一致しません。



     
  3. [追加] ボタンをクリックします。新しいエントリ行が表示されます。
  4. [パラメーター名] を入力します。
  5. 以下のいずれかの操作を行います。
    1. このパラメーターが特定の値に設定されているメッセージに一致させたい場合、[] フィールドにその値を入力します。
    2. パラメーターの値に関係なく、パラメーター名が存在する場合に、このパラメーターを含むすべてのメッセージに一致させたい場合、[パラメーターのリストが正確に一致する場合にだけ応答条件に一致する ] または [ パラメーターのリストが正確に一致する場合にだけグループに含める ] をオンにします。


Virtualize の例

仮想アセットが http://myserver:9080/MyAsset/MyPath というパスにデプロイされ、レスポンダーで次の URL パラメーターが指定されると仮定します。

パラメーター名
param1value1
param2value2

SOAtest の例

エンドポイントが http://myserver:9080/MyAsset/MyPath であり、グループ化条件として次の URL パラメーターが指定されていると仮定します。

パラメーター名
param1value1
param2value2

次のリクエスト URL はこの応答条件またはグループ化条件に一致します。

  • http://myserver:9080/MyAsset/MyPath?param1=value1&param2=value2
  • http://myserver:9080/MyAsset/MyPath?param1=value1&param2=value2&param3=value3
  • http://myserver:9080/MyAsset/MyPath?param2=value2&param1=value1&param3=value3

以下の URL は一致しません。

  • http://myserver:9080/MyAsset/MyPath?param1=value1&param2=someothervalue1&param3=value3
  • http://myserver:9080/MyAsset/MyPath?param1=value1&m3=value3

リクエストボディによるグループ化

リクエストボディの XPath に基づいて、メッセージの応答条件またはグループ化を設定したい場合、以下の操作を行います。

  1. [応答条件の有効化] または [グループ化に使用] オプションをオンにします。
  2. [編集] ボタンをクリックします。[XPath 関数の編集] ダイアログが表示されます。
  3. 次のどちらかの操作を行います。
    • 要素ツリーから要素を選択し、[関数] ドロップダウン メニューから関数を選択します。受信リクエスト メッセージのツリー表現が表示される場合は、このオプションを使用します。
    • XPath 式を手動で指定します。ツリー表現が使用できない場合、またはツリーに抽出と評価のための要素または属性が完全に表示されない場合は、このオプションを使用します。応答条件/グループ化のためにサポートされる XPath 表現は、W3C の XPath 1.0 標準に基づきます。

左側のパネルに、リクエストのカテゴリがいくつか表示されている点に注意してください。

  • 原型的なリクエスト: トラフィック ファイルの解析中に検出されたメッセージ構造を表す代表的なメッセージです。
  • このグループのリクエスト: 現在、条件を編集しているグループに属するメッセージです。グループにメッセージがない場合、これは利用できません。
  • すべてのメッセージ: トラフィック ファイルのすべてのメッセージです。

  • No labels