このセクションでは JSON Assertor ツールについて説明します。JSON Assertor ツールは JSON メッセージ中の異なる要素にアサーションを設置できます。 このツールを使用するには有効なライセンスが必要です。
このセクションの内容:
Table of Contents | ||
---|---|---|
|
Note | ||
---|---|---|
| ||
JSON Assertor ツールはバージョン 9.7 で再実装されました。以前の実装は廃止予定です。既存のツールは引き続き動作しますが、ユーザーが追加する新しい JSON Assertor は新しい実装を使用します。 このセクションでは、現在の JSON Assertor 実装に焦点を当てています。廃止予定の JSON Assertor については、 「JSON Assertor Deprecated」を参照してください。 |
JSON Assertor ツールとは
JSON Assertor ツールは、JSON メッセージ中のデータの正確性を高めるために使用します。 このツールは、 JSON メッセージの個別の要素を見て、期待値を満たしているかチェックできます。
JSON Assertor ツールは JSON メッセージを通信する他のツールと接続させることができます。最もよく接続されるのは Messaging Client ツールと REST Client ツールです。
このツールは、 [回帰コントロールの作成/更新] ダイアログから [値アサーションの作成] オプションを選択することで、 JSON メッセージのために追加されます。この方法で JSON Assertor を追加する詳細については、 「Validating the Value of an Individual Response Element」を参照してください。
[出力の追加] ウィザードから追加することも可能です。詳細については、 「Adding Test Outputs」を参照してください。
JSON Assertor ツールの構成
JSON Assertor は次の 3 つのメイン タブから構成されます。
- 概要: 設定された JSON アサーションの詳細が表に表示されます。
- 設定: 新しい JSON アサーションの作成や既存の JSON アサーションの編集をします。
- 期待される JSON: 要素を選択できるテンプレートを作成する、期待される JSON レスポンスを指定します。 JSON Assertor が正常な JSON メッセージを受信する場合 (例: トラフィックから、あるいは連結先のツールから)、このパネルは自動的にデータが投入されます。代わりに、サンプル メッセージを [リテラル] タブや [ツリー] タブにコピーすることも可能です。注意: 期待される JSON はデフォルトでは保存されませんが、保存したい場合は、[期待される JSON を保存] をオンにします。
JSON Assertor ツールを構成するには、次の操作を行います。
- JSON Assertor ツールの [設定] タブで [追加] をクリックします。
[選択アサーション] ウィザードが開きます。 - アサーションの種類を選択します。利用可能なアサーション タイプの概要を次に説明します。
- 値アサーション: 次の値アサーションが利用できます。
- 値アサーション: 特定の要素の値を強制します。
- 値オカレンス アサーション: 特定の値を持つ要素が、指定された数だけ含まれているかを検証します (たとえばドキュメントに XPath セレクターと指定された値文字列の両方に一致する要素が n 個存在するかなど)。
- 数値アサーション: 要素の数値を強制します。
- 文字列比較アサーション: 指定された要素のテキスト コンテンツの値を強制します。
- 正規表現アサーション: 要素が正規表現と一致することを強制します (サポートされる正規表現の式については ここをクリック してください)。
- 式アサーション: 要素から構成される式の値を強制します。
- カスタム アサーション: カスタム ロジックを用いて要素の値を強制します。
- 構造アサーション: 次の構造アサーションが利用できます。
- オカレンス アサーション: 要素のオカレンスの数を強制します。
- Has Content アサーション: 要素にテキスト コンテンツがあるか (つまりテキストの長さが > 0 であるか) を検証します。
- Has Children アサーション: 要素に 1 つ以上の子要素があることを強制します。
- Type アサーション: 要素の種類を強制します。
- 複合アサーション: 次の複合アサーションが利用できます。
- AND アサーション: すべて成功しなければならない複数のアサーションをグループ化します。
- OR アサーション: 少なくとも 1 つが成功する必要がある複数のアサーションをグループ化します。
- 条件付きアサーション: 条件を満たす場合にだけアサーションを適用します (条件はこれまでに定義したアサーションの組み合わせです) 。
- 差分アサーション: 次の差分アサーションが利用できます。
- 数値差分アサーション: 特定要素の値に対して数値の差分を強制します。 要素の数値が、ユーザー定義のベース値からユーザー定義の数値の分だけ異なることをアサートします。たとえば、摂氏温度の値は氷点下 3 度であるとアサートするには、ベース値を 0、差分を -3 に設定します。
- 日付差分アサーション: 特定要素の値に対して日付の差分を強制します。
- DateTime 差分アサーション: 特定要素の値に対して日時の差分を強制します。
- 範囲アサーション: 次の範囲アサーションが利用できます。
- 数値範囲アサーション: 要素の数値が、数値範囲の包括的な範囲内にあることを強制します。
- 日付範囲アサーション: 特定要素の値に対して日付の範囲を強制します。
- DateTime 範囲アサーション: 特定要素の値に対する日時の範囲を強制します。
- 値アサーション: 次の値アサーションが利用できます。
- [次へ] をクリックします。ツリー ビューが表示されます。
- ツリー ビューで、このアサーションにチェックさせたい要素を選択し、[終了] をクリックします。
注意: ツールの [期待される JSON] タブでこの構造を編集できます (上記で説明)。
[設定] タブの [追加] をクリックして、メッセージに適用するアサーションをさらに追加できます。
追加オプションを指定したい場合 (例: 値の格納に使用される列名を変更したい、書き込み可能なデータ ソースに値を保存したい、あるいは既存の変数に値を格納したい場合など)、または参照される要素を変更したい場合は、 [設定] タブの右下にある [要素の変更] をクリックします。ダイアログが開き、グラフィカルに、または手動で任意の要素を編集できます。
このダイアログを使用して追加オプションを設定する方法については、「JSON Selector Reference」を参照してください。
ツールのオプション
[コンテンツのトリム] オプションは、期待されるテキストと比較する前に、抽出した文字列の先頭から末尾までにある空白を取り除きます。たとえば、「 bar 」が抽出された場合は「bar」となります (すべての例でかぎ括弧は無視してください。空白を表すために使用しているだけです)。[コンテンツのトリム] オプションがオフの場合、これは「bar」に一致し、「 bar 」には一致しません。
ビデオ チュートリアル
このビデオは、JSON レスポンスで目的のアサーションを追加する方法について説明します。
Vimeo | ||
---|---|---|
|