OpenAPI オペレーションから API テストケースを準備

オペレーションと出力形式を選択してください。認証、フィクスチャ、契約アサーションはご自身で追加してください。生成されたテストはこのページでは実行されません。

ブラウザ内でローカルに実行
このツールの処理はすべてブラウザ内で行われます。KivTools が入力内容をアップロード・保存したり、外部 API に送信したりすることはありません。
OpenAPI 定義OpenAPI 3.x または Swagger 2.0 の JSON/YAML ドキュメントを貼り付けてください。解析はローカルで行われ、サーバーやエンドポイントへの通信はありません。
生成されたテストケース

OpenAPI オペレーションからテストケースを準備する方法

OpenAPI 3.x または Swagger 2.0 のドキュメントを貼り付けるか、ローカルの .json・.yaml・.yml ファイルを開きます。パス、パラメーター、リクエストボディ、レスポンスはブラウザー内で読み取られ、見つかったオペレーションが一覧表示されます。

オペレーションを選び、テストプラン JSON で網羅すべきケースを確認するか、Vitest + fetch でリクエストを組み立てる実行可能なスターターを取得します。アップロードもエンドポイントへの通信もありません。

  1. 定義を貼り付けるかファイルを読み込み、「API を解析」を押します。paths 配下の各オペレーションがメソッド、パス、概要とともに一覧表示されます。
  2. オペレーションを選び、テストプラン JSON または Vitest + fetch を選択して「テストを生成」を押します。結果は下の欄に表示されます。
  3. 「コピー」または「ダウンロード」で結果を持ち出し、「クリア」で入力・オペレーション一覧・出力を空にします。
  4. 実行する前に、あなたにしか分からない情報を追加します。認証、実際のテストデータ、ドキュメントにサーバーがない場合のベース URL、契約に必要なアサーションです。

プランとスターターが扱う範囲、そして利用者に残る作業

ドキュメント読み取りの範囲

ローカル参照は定義まで解決されます。パスに宣言されたパラメーター、リクエストボディ、components のスキーマが対象です。パスパラメーターは仕様どおり常に必須として扱い、ドキュメントに required の記載がなくても変数を用意します。

Swagger 2.0 も読み取ります。ベース URL は schemes・host・basePath から組み立て、body パラメーターは JSON ボディになります。OpenAPI 3 では servers の先頭 URL を使い、サーバー変数は既定値で置き換えます。

生成されるコードの内容

Vitest ファイルは describe・expect・it をインポートし、パスパラメーターを camelCase の定数として宣言し、encodeURIComponent で URL を組み立て、クエリパラメーターを URLSearchParams で設定し、JSON ボディを対応する Content-Type ヘッダー付きで送信します。アサーションは 2xx ステータスの確認だけです。

JSON プランには正常系、必須入力ごとの欠落ケース(パスパラメーターとリクエストボディを含む)、ドキュメント化された 4xx/5xx レスポンスごとのケースが並びます。どちらの形式も同じ読み取り結果を使うため、ケース名はスターターと対応します。

ツールが担わない部分

処理はすべてページ内で完結し、生成したテストはここでは実行されません。2xx が返ってもレスポンスボディがスキーマに合う証明にはならないため、出力は拡張する前提の下書きとして扱ってください。

非常に大きなドキュメントもブラウザーで解析します。動作が重い場合はテスト対象のパスだけに絞ってください。定義そのものを先に確認したい場合は、同じカテゴリの OpenAPI バリデーターが構造と参照の問題を報告します。

最近使ったツール: