このセクションでは XML Assertor ツールについて説明します。XML Assertor ツールは XML メッセージ中のデータの正確性を高めます。 このツールを使用するには有効なライセンスが必要です。
このセクションの内容:
XML Assertor ツールは通常、サービスが返すデータを検証するために、 SOAP Client ツールまたは Messaging Client ツールに接続されます。XML Assertor ツールは、スクリプトを必要とすることなく、複雑なメッセージ検証のニーズを支援します。ユーザーは、XML メッセージの違反アサーションを簡単に作成して保守することができます。
サービスの結果を検証する際に、特定のルール コンフォーマントをビジネス要件に適用したい場合があります。この場合、変化が発生したことを検証するだけでは不十分です。容認できる XML メッセージは何から構成されるのかをルールとして定義し、このルールを適用するのが良いでしょう。
XML Assertor ツールは、さまざまなアサーションを提供します。 XML Assertor ツールのアサーションを使って、 XML メッセージの妥当性のために、より論理的でビジネスに適したルールを強化できます。
このツールは、一般的には XML メッセージの [回帰コントロールの作成/更新] で [値アサーションの作成] オプションを選択することで追加されます。この方法で XML Assertor を追加するには、 「個々のレスポンス要素値の検証」を参照してください。
[出力の追加] ウィザードから追加することも可能です。詳細については、 「テスト出力の追加」を参照してください。
XML Assertor ツールは次の 3 つのメイン タブから構成されます。
XML Assertor ツールを構成するには、次の操作を行います。
ツリー ビューで、このアサーションでチェックする要素を選択し、[終了] ボタンをクリックします。XML Assertor ツールの [期待される XML] タブで、このツリー構造を編集できます。
デフォルトでは、XPath フィールドは大文字と小文字を区別しますが、Virtualize の起動時に適切なシステム プロパティを指定することにより、大文字と小文字の区別を変更できます。 詳細については「大文字と小文字の区別」を参照してください。
[構成] タブで [追加] ボタンをクリックすることで、メッセージに適用するアサーションをさらに追加することもできます (たとえば price 要素で強制する数値アサーションなど)。
後でアサーションが参照する要素を変更したい場合、[設定] タブの下部にある [要素の変更] をクリックします。ダイアログが開き、グラフィカルに、あるいは手動で要素を編集できます。期待される XML に対する XPath 表現を確認するには、 [XPath の評価] をクリックします。
[コンテンツのトリム] オプションは、期待されるテキストと比較する前に、抽出した文字列の先頭から末尾までにある空白を取り除きます。たとえば、「 bar 」が抽出された場合は「bar」となります (すべての例でかぎ括弧は無視してください。空白を表すために使用しているだけです)。[コンテンツのトリム] オプションがオフの場合、これは「bar」に一致し、「 bar 」には一致しません。
次のような XML があり、
<foo> bar </foo> |
「bar」の値の前後にある改行文字が大抵はフォーマットの問題である場合、このオプションを有効にすれば、抽出を作成するときに XML のフォーマットを説明する必要がありません。
XPath をパラメータライズし、テスト スイートまたはレスポンダー スイートの変数、環境変数、データ ソース値を参照できます。 変数を参照するための構文は、${myVariableName} です。XML Data Bank の値と XML Data Source の値を参照する構文は ${myColumnName} です。${myColumnName}.
たとえば、データ ソース列名が ${XPath Key} の場合、次の構文を使用できます。
/*[local-name(.)="bookstore" and namespace-uri(.)=""]/*[local-name(.)="book" and
namespace-uri(.)=""][child::node()[local-name(.)="title" and text()="${XPath Key}"]]
ビデオ チュートリアルこのビデオは、XML レスポンスで目的のアサーションを追加する方法について説明します。 |
以下のチュートリアルでこのツールの使い方を説明しています。