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

このセクションでは、 JSON Data Bank ツールの設定および適用方法について説明します。JSON Data Bank ツールは、リクエスト メッセージやレスポンス メッセージから JSON の値を抽出して別の場所で使用できるようにします。データは書き込み可能なデータ ソースに送られて Extension Tool でアクセスできたり、変数に送られてレスポンダー スイートまたはアクション スイート間での再利用を簡単にしたりします。

セクションの内容:

Table of Contents
maxLevel1

Note
title移行に関する注意事項

JSON Data Bank ツールはバージョン 9.7 で再実装されました。以前の実装は廃止予定です。既存のツールは引き続き動作しますが、ユーザーが追加する新しい JSON Data Bank は新しい実装を使用します。

このセクションでは、現在の JSON Data Bank 実装に焦点を当てています。

JSON Data Bank ツールとは

JSON Data Bank ツールは、リクエスト メッセージやレスポンス メッセージから JSON の値を抽出して別の場所で使用できるようにします。JSON Data Bank ツールは、 JSON を出力する他のツールに連結できます。JSON から情報を抽出し、以降のテストで使用できます。 たとえば、 JSON Data Bank を使用して、たとえば受信リクエストから値を抽出し、リクエスト受信時に送信するレスポンスの要素を設定する際にその値を使用できます。ウィザードを使用してトラフィックから仮想アセットを作成するときに、自動的に JSON Data Bank を設定できます。さらに、[データ ソース ウィザードの使用] で値を抽出し、レスポンス内のパラメータライズされた値として使用することもできます。メッセージ レスポンダーの場合、受信リクエスト (ボディまたはヘッダー) の値を抽出できます。他のツール (アクション スイートで使用されるツールなど) の場合、スイート内の別のツールの値を抽出できます。別のオプションとして、既存のツールの出力として、任意のデータを抽出する JSON Data Bank を手動で追加し、抽出された値を使用するために他のツールを構成します。

データ ソース ウィザードを使用した JSON Data Bank の設定

抽出の設定

JSON Data Bank を設定するために [データ ソース ウィザードの使用] を使用するには、次の操作を行います。

  1. (メッセージ レスポンダーと一緒に使用することはできません) テスト スイートに少なくとも 2 つツールがあることを確認します。

  2. 抽出した値を使用したいツールのコンフィギュレーション パネルで、利用可能なフォーム ビューを選択します。
  3. 抽出した値を使用したいメッセージ要素に移動し、ドロップダウン メニューから [パラメータライズド] および [データ ソース ウィザードの使用] を選択します。



  4. ウィザードが開くので、次の操作を行います。
    1. 値を抽出したいツールを選択します。パネル上部のドロップダウン メニューには、現在構成しているツールより前にあるテスト スイート内のすべてのツールが含まれます。たとえば、ツール 4 を構成している場合は、ツール 1、 2、 3 が利用可能なデータ ソースとともにメニューに表示されます。
    2. メッセージ レスポンダーでは、値を抽出したい着信リクエスト メッセージを選択し、値をメッセージ ボディから抽出するかメッセージ ヘッダーから抽出するかを指定します。[期待されるメッセージ] で、抽出したい要素を選択して [追加] をクリックします。右側のパネルには、抽出のために設定した値のリストが表示されるほか、デフォルト設定のままにした場合、格納されるデータ ソース列名が表示されます。


後でオプションを指定する場合 (たとえば、値を格納するために使用する列の名前を変更したい場合、書き込み可能なデータ ソースに値を保存したい場合、あるいは既存の変数に値を格納したい場合)、または参照される要素の詳細設定を変更したい場合、右側の表で適切な要素を選択し、[変更] をクリックします。そして、必要に応じてオプションを設定して [OK] をクリックします。

追加オプションを設定するためにこのダイアログを使用する方法については、「JSON Selector のリファレンス」を参照してください。

手動で JSON Data Bank を設定

テスト スイート、レスポンダー スイートまたはアクション スイート内のツールに手動で JSON Data Bank ツールを連結することも可能です。連結されたツールとして JSON Data Bank を設定するには、次の操作を行います。(メッセージ レスポンダーと一緒に使用することはできません)

  1. テスト スイートに少なくとも 2 つツールがあることを確認します。

  2. 抽出したいデータのあるツールのノードを右クリックし、(たとえば、着信リクエストや送信レスポンスから値を抽出したい場合、それらのメッセージを処理するメッセージ レスポンダーを選択します)、ショートカットメニューの [出力の追加] をクリックします。

  3. [出力の追加] ウィザードで、どこから値を抽出したいか(例: 着信リクエスト、トランスポート ヘッダー、着信添付ファイル、送信レスポンス、など)を選択し、ツールのリストから JSON Data Bank を選択して [終了] ボタンをクリックします。JSON Data Bank ノードがツールの下に表示されます。

  4. 次のようにツールを設定します。
    1. 抽出したい要素を指定します。要素を抽出するには、 JSON ツリーから値を選択して [要素の抽出] ボタンをクリックします。追加した値は、値に由来するツールの名前を含んだデータ ソース列名と抽出した値とともに、 [選択された要素] のリストに表示されます。

      Info
      iconfalse
      title期待されるメッセージの操作

      左側のパネルは、要素を選択できるテンプレートの作成に使用される、期待される JSON レスポンスを表示します。JSON Data Bank が正常な JSON メッセージを受信する場合 (例: トラフィックから、あるいは連結先のクライアント ツールで定義されて)、このパネルは自動的にデータが投入されます。代わりに、サンプル メッセージを [リテラル] タブや [ツリー] タブにコピーすることも可能です。注意: 期待される JSON はデフォルトでは保存されませんが、保存したい場合は、[期待される JSON を保存] オプションをオンにします。

    2. 抽出によって参照される要素を後で変更したい場合、[修正] をクリックして変更します。詳細については「JSON Selector のリファレンス」を参照してください。

    3. 実行したい抽出をさらに設定するには、必要に応じてステップ a と b を繰り返します。
    4. JSON Data Bank のコンフィギュレーション パネル下部で、必要に応じてオプションをカスタマイズします。詳細については、「ツールのオプション」を参照してください。

抽出した情報の使用

抽出を追加あるいは変更したら、抽出された値を使用するツールを設定します。

[パラメータライズ] を選択し、ドロップダウンから適切なアイテムを選択します。たとえば、データ ソース列「title」に値を保存した場合は、次のように選択します。


ツールのオプション
Anchor
Tool Options
Tool Options

JSON Data Bank ツールのコンフィギュレーション パネル下部で、次のオプションが構成できます。


  • 期待される JSON の保存: 期待される JSON を保存するかどうかを指定します。
  • 変更を許可: 抽出の変更を許可するかどうかを指定します。このオプションがオンの場合、 [選択された要素] の下に [抽出] タブと [変更] タブが表示されます。抽出を変更するには、 [変更を許可] チェックボックスを選択し、 [変更] タブを選択して、[要素の抽出] ボタンをクリックして抽出を追加します。その後、[変更] ボタンをクリックして抽出を変更します。次のオプションを含む [変更] ダイアログが表示されます。
    • XPath: 選択された XPath を表示します。詳細については「JSON Selector のリファレンス」を参照してください。

    • 変更のタイプ: 入力するが JSON を変更する方法を選択できます。後に付加: 変更した値が抽出の最後に追加されます。前に付加: 変更した値が抽出の先頭に追加されます。置換: 変更した値によって抽出全体が置換されます。
    • 変更の値: データ ソースを使用して固定値またはパラメータライズされた値を指定できます。
  • 空要素の抽出方法: 空の要素を抽出するかどうかを指定します。このオプションが有効な場合、隣のテキスト フィールドで、空の抽出要素の代わりに「プレースホルダー」として追加するテキスト文字列を指定できます。
  • 不足要素の抽出方法: 存在しない要素を抽出するかどうかを指定します。このオプションが有効な場合、隣のテキスト フィールドで、存在しない抽出要素の代わりに「プレースホルダー」として追加するテキスト文字列を指定できます。


JSON レスポンスの整合性を維持するために空要素/不足要素を処理する
Anchor
Handling Empty/Missing Elements to Maintain the Integrity of the JSON Response
Handling Empty/Missing Elements to Maintain the Integrity of the JSON Response

デフォルトでは、空要素および不足要素は抽出されません。このことは、書き込み可能なデータ ソースで使用する JSON レスポンスの整合性に影響します。

たとえば、次の JSON があるとします。

      {
          "e":5,
          "e":"",
          "e":6
      }

また、すべての'e' 要素に抽出を作成したいと仮定します。これを行うには、最初の要素を選択し、[要素の抽出] をクリックします。
 




次に、新しい抽出を選択して [修正] をクリックします。

修正ダイアログで、抽出する XPath を /root/e[1]/text() から /root/e/text() に変更します。
 



そうすることで、 3 つすべてのテキストノードが抽出されます。

次に、データ ソース列をクリックして書き込み可能なデータ ソース列を選択します。  2 番目の要素はテキストが不足しているので、 Data Bank が実行されるとき、書き込み可能なデータ ソースはには 2 行しかありません。

ROW 1 = 5

ROW 2 = 6

空の値を書き込みたい場合は、 XPath を /root/e/text() から /root/e に変更して、 [内容のみ] が有効であることを確認します。
 



この方法で、 3 要素すべてが内容を含め抽出されます。空の値のために抽出された値を変更するためのオプションとして、任意で [空要素の抽出] を有効にできます。Data Bank は書き込み可能なデータ ソースに空の値を追加します。

ROW 1 = 5

ROW 2 =

ROW 3 = 6