このセクションでは、XML Data Bank ツールの構成と適用方法について説明します。XML Data Bank ツールを使用すると、リクエスト メッセージやレスポンス メッセージから XML 値を抽出して他のツールで使用できます。抽出したデータは、書き込み可能なデータ ソースへ格納して Extension Tool で使用したり、変数に代入してテスト スイート間 (SOAtest) または レスポンダー スイート/アクション スイート間 (Virtualize) で再利用したりすることができます。

このセクションの内容:

XML Data Bank ツールとは

XML Data Bank ツールを使用すると、リクエスト メッセージやレスポンス メッセージから指定の XML 値を抽出し、他のツールで使用できます。 XML Data Bank ツールは、 XML を出力する任意のツールに接続できます。 XML Data Bank ツールは、 XML から任意の情報を抽出し、今後のテストで使用できるようにします。

たとえば、銀行の Web サービス トランザクションをテストするテスト スイートを構成するとします。このテスト スイートの Test 1 が ユーザー ID を使ってサービスにログオンすると、 SOAP レスポンスは Test 1 にセッション ID を返します。Test 2 は Test 1 のセッション ID を使用してトランザクションを実行するように構成できます。テスト スイート中の任意のテストで、 SOAP レスポンス パラメーターを SOAP リクエスト パラメーターとして使用するように構成できます。

XML Data Bank ツールは、通常データ ソース ウィザードを使って構成します。値は SOAP Client ツールや Messaging Client ツールでパラメータライズします。データ ソース ウィザードを使用するのは、あるツールからデータを抽出して別のツールで使用するために、迅速で、直感的で、大部分が自動化された方法です。抽出したデータを挿入するツールへ移動し、ウィザードを使用してどのツールからどのデータを抽出するか指定します。これはチュートリアルの「Storing Results to Be Used in Subsequent Tests」項目で紹介している使用モデルです。これと同じ手法で、変数にセットするためのデータを抽出できます。あるいは、手動で XML Data Bank ツールを構成し、ひとつのツールからデータを抽出するようにします。そして別のツールを手動で構成し、抽出した値を使用できるようにします。


ビデオ チュートリアル

XML レスポンスから値を抽出し、他のテストで再利用する方法について説明します。





データ ソース ウィザードを使用した XML Data Bank ツールの構成

抽出の構成

データ ソース ウィザードを使用して XML Data Bank ツールを構成するには、次の操作を行います。

  1.  少なくとも 2 つのテスト ツールを持つ テスト スイートを用意します。

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



  5. ウィザードでは次の操作を行います。
    1. 値を抽出したいツールを選択します。パネル上部のドロップダウン リストには、テスト スイート内の現在設定しているツールより前に存在するすべてのツールを表示します。たとえば、現在 Tool 4 を設定しているとすると、 Tool 1 、 2 、 3 がドロップダウン リストに表示されます。

    2. パネルの左側から抽出対象を選択し、 [追加] をクリックして右側に追加します。パネルの右側には、抽出の構成で設定した値と、格納先のデータ ソース列の名前が表示されます (デフォルト設定の場合)。
    3. (オプション) たとえば、値を格納する列の名前を変更するのに、値を書き込み可能なデータ ソースか既存の変数に保存したい場合があります。このような追加オプションを指定する場合、または XPath の拡張設定を修正する場合は右側の表から適切な要素を選択し、 [変更] をクリックします。 次に、必要に応じてオプションを設定し、 [OK] をクリックします。利用可能なオプションについては 「Options for Each Extracted Element」を参照してください。

XML Data Bank ツールの手動構成

レスポンダー スイート、アクション スイート、テスト スイートのツールに XML Data Bank ツールを手動で接続することもできます。XML Data Bank ツールを接続ツールとして構成するには、次の操作を行ってください。

  1.  少なくとも 2 つのテスト ツールを持つ テスト スイートを用意します。

  2. 抽出したい値と関連するツールのノードを右クリックし[出力の追加] をクリックします。

  3. [出力の追加] ウィザードで、どこから値を抽出するか指定し (たとえば、 SOAP エンベロープ)、[終了] をクリックします。 XML Data Bank ノードがツールの下に表示されます。

  4. 次のようにツールを構成します。
    1. 抽出する値を示す XPath を指定します。 XPath を追加するには、 [期待されるメッセージ] リストから値を選択し、[要素の抽出] をクリックします。追加した値は、抽出した値と、その値に由来するツールの名前を含んだデータ ソース列名で [選択された要素] リストに表示されます。 


      左側のパネルは、要素を選択できるテンプレートの作成に使用された、期待される XML レスポンスを表示します。このツールが (たとえばトラフィックから、あるいは連結先のクライアント ツールで定義されて) 正常な XML メッセージを受信する場合、このパネルに自動的にデータが投入されます。代わりに、サンプル メッセージを [リテラル] タブや [ツリー] タブにコピーすることも可能です。注意: 期待される XML はデフォルトでは保存されませんが、保存したい場合は、[期待される XML を保存] オプションをオンにします。
    2. XPath をさらに構成したい場合またはこの要素の抽出設定をカスタマイズしたい場合は、 [修正] をクリックして修正します。詳細については、「Options for Each Extracted Element」 を参照してください。

    3. 抽出を追加するには、 a と b の手順を繰り返してください。
    4. XML Data Bank コンフィギュレーション パネルの下部で、必要に応じてオプションをカスタマイズできます。詳細については、「Tool-Wide Extraction Options」 を参照してください。

抽出した値の使用

抽出を追加あるいは修正したら、抽出したデータを使用するツールを構成します。

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



構成オプション

XML Data Bank ツールを構成する際、次のオプションも設定できます。

抽出した各要素のオプション

以下のオプションは、XML Data Bank ツールの設定パネル右側に表示されている選択を変更することで設定できます。

XPath オプション

データ ソース列オプション

ツール全体の抽出オプション

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

テスト中に使用された Data Bank 変数の参照

コンソール ビューを設定し、テスト中に使用された Data Bank 変数を参照できます。コンソール ビューを開くには、 [ウィンドウ] メニューの [ビューの表示] > [コンソール] をクリックします。詳細については、 「変数の使用状況をモニタリング」を参照してください。

XPath のパラメータライズ

XPath をパラメータライズし、テスト変数、環境変数、データ ソース値を参照できます。変数を参照する構文は ${myVariableName} です。 XML Data Bank の値と XML Data Source の値を参照する構文は ${myColumnName} です。${myColumnName}.

たとえば、データ ソース列名が ${XPath Key} の場合、次の構文を使用できます。

/*[local-name(.)="bookstore" and namespace-uri(.)=""]/*[local-name(.)="book"

および

namespace-uri(.)=""][child::node()[local-name(.)="title" and text()="${XPath Key}"]]

空要素 / 不足要素を処理して XML レスポンスの完全性を保持

デフォルトでは、空要素と不足要素は抽出されません。  したがって、書き込み可能なデータ ソースで使用する XML レスポンスの完全性に影響をあたえる可能性があります。

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

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<e>5</e>
	<e/>
	<e>6</e>
</root>

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



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

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



すべてのツリー ノードが抽出されるようになります。

次に、 [データ ソース列] をクリックして [書き込み可能なデータ ソースの列] を選択します。データ バンクが実行されるとき、2 つ目の要素はテキストがないため、書き込み可能なデータ ソースには 2 つの行しか含まれません。

ROW 1 = 5
ROW 2 = 6

空の値を書き込みたい場合は、 XPath を /root/e/text() から /root/e に変更して、[内容のみ] を選択します。



この方法で、内容を含むすべてのツリー要素が抽出されます。任意で [空要素の抽出方法] をオンにし、空の値から抽出された値を変更できます。以上で、 Data Bank は書き込み可能なデータ ソースに空の値を追加するようになります。

ROW 1 = 5
ROW 2 =
ROW 3 = 6

関連するチュートリアル

以下のチュートリアルでこのツールの使い方を説明しています。