メインコンテンツへスキップ
SDETRole
SDETRole

API テスト

API レスポンス検証ツール

貼り付けたレスポンスに JSONPath・ステータス・ヘッダーのチェックを実行。

すべてブラウザ内で動作 登録不要

Checks run as you type. JSONPath scripts and filters are disabled for safety.

Response body (JSON)

Status and headers (optional)

One “Name: value” per line, as copied from DevTools or curl -i.

Checks · 2

Expected values are parsed as JSON when possible (42, true, "42", null), otherwise compared as text. When a path matches several values, every match must pass; length operators count the matches.

Paste a JSON response body to run the checks

このツールについて

コードでアサーションを書く前に、実際のレスポンスに対して試し、どれが通るかを確認しておくと役立ちます。JSON ボディと、必要に応じて DevTools や curl -i からコピーしたステータスコードとヘッダーを貼り付け、表形式でチェックを定義します。JSONPath が存在する・しない、値と等しい、型が一致する、正規表現に一致する、要素を含む、長さが一致する、数値より大きい・小さい、などです。ステータスのチェックは正確なコードか 2xx のようなクラスを受け付け、ヘッダー名は大文字・小文字を区別せずに照合されます。結果はテストランナーのように ✓ と ✕ の行で表示され、「3 passed, 1 failed」(3 件成功、1 件失敗)という要約をバグレポートにコピーできます。JSONPath はスクリプト評価を無効にして評価されるため、フィルター式は実行されずに拒否されます。貼り付けたテキストからは応答時間を測定できないため、そのチェックはスキップとして報告されます。

使い方

  1. レスポンスボディの JSON と、チェックしたい場合はステータスとヘッダーを貼り付けます。または「Load sample」(サンプルを読み込む)をクリックします。
  2. チェックを追加します。対象を選び、$.data[*].email のような JSONPath かヘッダー名を入力し、演算子と期待値を選びます。
  3. 入力に合わせて表示される結果を確認し、レポートをコピーします。複数の値に一致するパスは、すべての値で条件を満たす必要があります。

API レスポンス検証ツール のよくある質問

$..[?(@.price > 10)] のようなフィルター式が失敗するのはなぜですか?

フィルター式やスクリプト式はコードの評価が必要で、このツールは安全のためそれを無効にしています。代わりに $.items[*].price のようなワイルドカードのパスと「>」などの演算子を使ってください。一致したすべての値が条件を満たす必要があります。

期待値はどのように解釈されますか?

JSON として解析できる場合は JSON として比較されます。つまり 42 は数値、"42" は文字列、true は真偽値、null は null です。それ以外はプレーンテキストとして比較されます。オブジェクトと配列の等価比較では、キーの順序は無視されます。

これらのチェックを自動テストにできますか?

はい。チェックが通ったら、API アサーション生成ツールを使って、同等の Playwright、Postman、REST Assured、Cypress のアサーションを生成してください。

キーワードを入力すると SDETRole 全体を検索できます。

Pagefind による全文検索 · ブラウザ内で動作します 検索ページを開く →