APIレスポンスの検証

APIテストを作成する際には、個々のAPIリクエストのレスポンスにアサーションを追加して、APIが期待どおりの結果を返していることを検証することが重要です。たとえば、リクエストのステータスコードが200に等しく、レスポンスボディ (JSON) に特定のメールアドレスを持つユーザーが含まれているかどうかをアサートします。

コードなしでのアサーションおよび変数の作成

デフォルトでは、テスト内に新しいAPIステップを作成すると、ステータスコードが200に等しいかどうかを確認するアサーションが自動的に作成されます。このアサーションは、該当するAPIステップの [Validation and variable assignment] セクションで変更できます。

新しいアサーションを追加する場合は、[Validation and variable assignment] セクションの [ASSERTIONS] タブを使用します。たとえば、APIリクエストのレスポンスボディに特定のメールアドレスを持つユーザーが含まれるかどうかをアサートするとします。このアサーションを作成するには、[Add] ボタンをクリックします。利用可能なすべてのオプションを含むアサーションカードが表示されます。アサーションのターゲットとしてJSONボディを選択し、特定のメールアドレスが含まれるターゲットレスポンスプロパティへのJSONパスを入力します。このケースでは、これはビジョンパスです。APIリクエストを送信して、何をターゲットレスポンスプロパティへのパスにすべきかを確認することをお勧めします。JSONパスの指定が済んだら、アサーションタイプ (例: equals、contains) を選択し、期待される値を指定します。

2494

APIリクエストのレスポンスに対するアサーションの作成。

また、ターゲットプロパティ値を変数に割り当てて、連続するテストステップで使用したり、同じテストプラン内の他のテストと共有したりすることもできます。この場合は、[VARIABLES] タブに移動し、上記の手順を繰り返して必要なターゲット値を変数に割り当てて、変数に名前を付けます。リクエストを再度送信すると、左側のパネルの [Variables] セクションにこの変数が表示されます。

📘

レスポンスボディの検証

JavaScriptを記述せずにレスポンスボディをアサートする場合、サポートされるのはJSON形式のみです。XMLレスポンスボディを使用するSOAPベースのAPIを検証する場合は、APIテストでのJavaScriptの使用の説明に従ってJavaScriptコードを使用できます。

上記のアプローチに従って、APIテストのステップごとに必要な数のアサーションと変数を作成できます。したがって、APIテストを実行したときにアサーションの1つが失敗すると、テスト実行は失敗としてマークされます。

以下のレスポンスデータに基づいて、アサーションと変数を簡単に作成できます。

  • ステータスコード
  • サイズ
  • ヘッダー
  • ボディ
    サポートされているアサーションタイプは、以下のとおりです。
  • Equals (次の値に等しい)
  • Does not equal (次の値に等しくない)
  • Contains (次の値を含む)
  • Does not contain (次の値を含まない)
  • Is present (存在する)
  • Not present (存在しない)
    さらに複雑な検証シナリオを扱う必要がある場合は、APIテストでのJavaScriptの使用の説明に従ってJavaScriptコードを使用できます。