Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SVC2020.2

...

Info

このトピックでは、トラフィックから仮想アセットを作成するための高度なインターフェイスについて説明します。このインターフェイスは、CTP が Virtualize 9.10 以上と接続されている場合に使用できます。Virtualize 9.9.x からの仮想アセットの作成については、「Creating Virtual Assets CTP」を参照してください。

概要

CTP の「トラフィックからの作成」機能を利用すると、記録済みの HTTP/S、JMS、MQ トラフィックから、パラメーターライズされた仮想アセットをすばやく作成でき、複雑なレスポンスを定義する時間や手間を省くことができます。また、データの編集と拡張が容易になり、1 つの環境 (機能テストなど) でキャプチャされたデータを簡単に他の環境 (パフォーマンス テスト、開発、セキュリティ テストなど) でも再利用できます。

...

CTP のトラフィックからの作成機能は、JSON または XML フォーマットのメッセージを処理するよう設計されています。他のメッセージ フォーマット (EDI、プレーン テキストなど) のトラフィック ファイルから仮想アセットを作成するには、デスクトップ版の Virtualize でフォーマットに応じたパラメータライズされたメッセージの生成機能を使用します。

前提条件

トラフィックから仮想アセットを作成するには、以下が必要です。

  • Virtualize 9.10 以上が CTP に接続されていること (詳細については「Integrating Virtualize Server and-or SOAtest Server with CTP」を参照)
  • 仮想アセットを作成する Virtualize サーバーの recorded_traffic フォルダーにサポート対象のトラフィック ファイルが格納されていること以下のフォーマットがサポートされています。
    • Vritualize のメッセージ プロキシまたはレコーディング プロキシによって生成されたログ (詳細については「Configuring Message Proxies」を参照)
    • ネットワーク監視ツールを使用してネットワーク レベルでキャプチャされたメッセージ トレースまたはログ
    • アプリケーションでトラフィックを記録した HTTP ログ
  • Parasoft Data Repository サーバーが実行され、CTP と接続されていること (詳細については「 Test Data Assistant のセットアップSetup」を参照)
Info
title注意:
  • メッセージ コンテンツは整形式でなければなりません (たとえば、XML の場合は整形式であること)。整形式でない場合、トラフィックからの Message Responder の自動生成が失敗する可能性があります。SOAP メッセージには、最上位の XML 要素が 1 つだけ存在しなければなりません。 

  • 混合型を含む JSON 配列のパラメータライズはサポートされていません。JSON 配列に混合型が含まれていない場合、CTP は配列のすべての要素が最初の要素と同じ型であるとみなします。


仮想アセットの作成 

トラフィックから仮想アセットを作成するには、次の操作を行います。

  1. 左側のペインで新規仮想アセットを追加するサーバーまたはフォルダーを選択します。
  2. ページレベルのアクション メニューの [仮想アセットの作成] をクリックします。
  3. (任意) 新しく作成される仮想アセットの名前を変更します。
  4. [作成] に [トラフィック] を指定します。
  5. (Virtualize サーバーの traffic_templates フォルダーに格納された) テンプレート ファイルの設定を適用するには、[テンプレート ファイルの適用] オプションをオンにし、適用するテンプレート ファイルを選択します。  テンプレートを適用すると、ウィザードの残りのページの設定に、あらかじめ値が設定されます。必要に応じて設定値を変更できます。テンプレートの値は変更されません。変更後の設定を新しいテンプレートとして保存することもできます。  

  6. [リポジトリ サーバー] の下で、関連データを保存する Data Repository サーバーを選択します。
  7. [リポジトリ名] の下で、関連データを保存するデータ リポジトリの名前を選択するか、新しい名前を入力し、[次へ] をクリックします。

  8. ウィザードの次のページで、推奨されるグループ化計画を確認し、必要に応じてストラテジを変更して [次へ] をクリックします。利用可能なグループ化ストラテジの詳細については「グループ化計画について」を参照してください。以下はオプションの概要です。
    • HTTP メソッド: HTTP メソッドによってメッセージを処理するかどうかを決定します。  
    • URL パス: URL パスによってメッセージを処理するかどうかを決定します。 
    • URL パラメーター: URL パラメーターによってメッセージを処理するかどうかを決定します。 
    • リクエスト ボディ: XPath によってメッセージを処理するかどうかを決定します。

  9. ウィザードの次のページで、メッセージのグループ化の結果を確認します。
    • 処理されたリクエスト/レスポンス ペアの合計数と無効なペアの数が上部に表示されます。
    • 表示される列のタイプは、適用されたグループ化計画によって異なります。 
    • テーブルの各行は、グループを定義する条件に対応します。テーブルの各行に 1 つのグループが生成されます。各グループに 1 つのレスポンダーが生成されます。 

  10. 自動設定されたリクエスト応答条件を変更したい場合、および/または WSDL/スキーマを指定したい場合、関連する行を展開して WSDL/スキーマおよび応答条件を構成します。応答条件を構成する方法の詳細については、「データ ソース応答条件のカスタマイズ」を参照してください。


    Info
    titleWSDL/スキーマを指定する理由

    WSDL またはスキーマを指定すると、トラフィックからの推測ではなく、WSDL/スキーマに合わせてデータ定義が作成されます。さらに、デスクトップ版の Virtualize でこの仮想アセットを操作するとき、より豊富な編集機能や変更アドバイザー機能を利用できるようになります。

  11. ウィザードで使用した設定を保存するには、[再利用可能なテンプレートをエクスポート] をオンにして任意のファイル名を指定します。デフォルトでは、トラフィックは現在のサーバーの recorded_traffic フォルダー (フォルダーが存在しない場合は作成されます) に %n_%d_%t.traffictemplate というファイル名で記録されています。ファイル名を指定する場合、%d (現在日付)、%t (現在時刻)、%n (名)、%u (時間ベースのユニークな ID) などの変数を使用できます。  

  12. [アセットの作成] をクリックします。

...

  • 要素がパラメータライズされ、レスポンダー応答条件およびデータ ソース応答条件が設定された Message Responder が追加されます。
  • (新規データ リポジトリの場合) 適用可能なデータ セットおよびレコード タイプが追加された Data Repository が追加されます。トラフィックの解析によって識別されたメッセージの「グループ」ごとに 1 つのデータ セットが追加されます。
  • (既存のデータ リポジトリの場合) 新規データ セットおよびレコード タイプが既存のリポジトリに追加されます。
  • 追加されたデータ セットごとに 1 つのリポジトリ データ ソースが追加され、Message Responder がこのデータ ソースを使用するよう設定されます。

...



scroll-pdf-ignore
true
scroll-officefalse
scroll-chmfalse
scroll-docbookfalse
scroll-eclipsehelpfalse
scroll-epubfalse
scroll-htmlfalse

動画チュートリアル記録済みトラフィックからの仮想アセットの作成

このチュートリアルでは、記録済みトラフィックから仮想アセットを作成する方法を学びます。

Vimeowidget
Heightwidth500
Width800
600
urlURLhttps://playerwww.vimeoyoutube.com/video/281498019watch?v=APG4MzpfAdg
height400

Anchor
grouping
grouping
グループ化計画について

トラフィックから仮想アセットを作成する場合、Virtualize サーバーはリクエスト/レスポンス ペアを操作/タイプによってグループ化します。グループ化メソッドは、a) 指定されたトラフィックを Virtualize が解析した結果、および b) 選択されたグループ化条件の両方に影響されます。推奨されるグループ化計画が自動的に選択されます。必要に応じて、それらの推奨を調整し上書きすることができます。 

...

  • 一般的な条件より特化した条件を優先します。グループ内のすべてのメッセージにだけ一致する (他のグループのメッセージには一致しない)、できる限り特殊な式を生成します。これにより、生成されるレスポンダーは、同じトラフィックに正確に応答できます。
  • グループ化の順序 (HTTP メソッド、URL パス、URL パラメーターの後にリクエスト ボディ コンテンツ) に従います。たとえば、URL パスだけでグループを区別できる場合、リクエスト ボディなどのグループ化条件に対応する応答条件は作成されません。

以下のグループ化計画を適用できます。

Anchor
method
method
HTTP メソッド

生成されたメッセージ レスポンダーを HTTP メソッド (POST、GET、PUT など) に基づいて分割します。この計画が有効な場合、異なる HTTP メソッドに対してそれぞれメッセージ レスポンダーが生成されます。

...

結果のグループをカスタマイズし、1 つのグループが複数の HTTP メッセージに対応するようにできます。たとえば、1 つのグループ内で POST および PUT の両方が有効化されている場合、POST メソッドを使用するメッセージと PUT メソッドを使用するメッセージがグループに一致し、グループに割り当てられます。言い換えれば、グループに基づいて生成されるレスポンダーは、POST および PUT メッセージの両方に応答します (どちらも受け入れます)。

Anchor
path
path
URL パス

生成されたメッセージ レスポンダーを URL パスに基づいて分割します。固有の HTTP URL ごとに 1 つのメッセージ レスポンダーが生成されます。HTTP URL パスによるグループ化を指定すると、HTTP URL の固有性に基づいてグループが定義されます。

...

Info
titleパスベースのデータ ソース応答条件の設定

Virtualize は、新しい PVA を作成する際、URL パス セグメント インデックスを設定し、各グループ (レスポンダー) が異なる URL パス値を持つ同じリクエストに応答できるようにします。Virtualize は、セグメント インデックスを提供することで URL パス パラメーターを設定します。たとえば、以下の URL があるとします。

/rest/api/2/version/1234/relatedIssueCounts
/rest/api/2/version/4568/relatedIssueCounts
/rest/api/2/version/4567/relatedIssueCounts

Virtualize は 5 番目のパス セグメント (4 桁の数字のセグメント) をデータ ソースでパラメータライズします。PVA を編集することなく、これらの各 ID のレスポンス データをデータ駆動できます。


Anchor
parameter
parameter
URL パラメーター

生成された Message Responder を HTTP URL パラメーターに基づいて分割します。固有の URL パラメーターごとに 1 つの Message Responder が生成されます。

...

  • Responder 1: URL パラメーター oid が存在する (3 メッセージ)
  • Responder 2: URL パラメーター ssn および state が存在する (2 メッセージ)

Anchor
body
body
リクエスト ボディ

生成されたメッセージ レスポンダーをリクエスト コンテンツの評価を行う XPath 式のリストに基づいて分割します。各 XPath 式は 1 つのグループおよび XML メッセージ応答条件に対応します。

...

カスタム メッセージ フォーマット (またはビルトインの非 XML フォーマット) が使用されている場合、XPath 式はリクエストを変換した後の XML フォーマットに基づきます。

Anchor
correlations
correlations
データ ソース応答条件のカスタマイズ

(上で説明した) レスポンダー応答条件は、メッセージ レスポンダーがどのメッセージを受け入れて処理するかを決定します。仮想アセット URL に送信されるさまざまなメッセージは、ここでの設定に基づいて特定のメッセージ レスポンダー ツール (それぞれ異なる操作に対応する) に振り分けられます。たとえば、1 つの Message Responder Tool は顧客登録メッセージに応答し、別のメッセージ レスポンダーは支払メッセージに応答し、さらに別のレスポンダーは、他のレスポンダーに一致しない場合に使用されるデフォルトの「キャッチ オール」として機能する場合があるでしょう。 

...

    • リクエスト ボディ応答条件は、XPath ビルダー (「XPath の指定Specifying XPaths」で説明) を使用して、またはテーブルに値を入力することで設定できます。
    • URL パラメーターおよび URL パス応答条件は、テーブルに行を追加することで設定できます。
    • 応答条件を設定する際、データ ソース列名を入力するか、ツールに関連付けられたデータ ソース (設定エリア上部の [データ ソース] 列で選択されている) の利用可能な行をリストから選択できることに注意してください。

Anchor
requestbody
requestbody
リクエスト ボディ応答条件

Virtualize は各操作/グループに対して「名前」ベースの XPath を生成し、操作のレスポンダー応答条件を設定するのに使用します。たとえば、SOAP Body の下の要素名が "SubmitOrder" である場合、XPath 式はレスポンダー応答条件セクションに local-name(/*/*[local-name(.)="Body"]/*)="SubmitOrder" のような条件を設定します。

...

ウィザードのページに表示される初期設定を上書きするには、表示されているコントロールを使用して XPath および列名を指定します。XPath セレクターの詳しい使用方法については、「XPath の指定Specifying XPaths」を参照してください。

Anchor
urlparameter
urlparameter
リクエスト URL パラメーター応答条件

リクエスト URL パラメーターについては、1 つのメッセージ グループに所属する呼び出しの中で URL パラメーターに、パラメーター数が異なる、パラメーター (名前) が異なる、パラメーター値が異なるなどの差異がある場合、Virtualize のトラフィックからの自動構成機能は、それらの差異に基づいて自動的に応答条件を設定します。

...

ウィザードのページに表示される初期設定を上書きするには、表示されているコントロールを使用してパラメーターおよび列名を指定します。たとえば、productCode パラメーターに対してデータ応答条件を設定するには、次のように指定します。

Anchor
urlpath
urlpath
リクエスト URL パス応答条件

URL パスについては、1 つのメッセージ グループに所属する呼び出しの中で URL に差異がある場合、Virtualize のトラフィックからの自動設定機能は、それらの差異に基づいて自動的に応答条件を設定します。

...