シナリオテストとレポート
単一リクエストは 1 回の呼び出ししか証明しません。シナリオテストが証明するのはワークフローです。あるレスポンスの値を後続リクエストに渡し、各ステップでアサーションを確認する順序付きリクエスト列。シナリオは、開発者の頭の中にしかなかったエンドツーエンドの流れを捉えます。
シナリオに含まれるもの
- 各ステップが仕様の操作を参照する順序付きステップ。
- ステップ間のデータ受け渡し——例えば作成したリソースの
idを取り、次のリクエストで使う。 - ステータスコード、レスポンスヘッダー、レスポンスフィールドへのアサーション。
- 実行前に読み手が提供しなければならな い値。
順序とアサーションは第一級で、実行中に黙って捨てられることはありません。
シナリオを実行する
シナリオはメインプロセスで、@powerduck/openapi-cli の runScenario エンジンを通じて実行されます。
scenario:runはシナリオ、仕様、リクエスト設定で実行を開始する。- ステップ実行に応じて進捗が
scenario:eventでストリームされる。 scenario:cancelは実行中タスクを停止する。
各ステップを観察し、フローがどこで失敗するか確認し、長い実行をキャンセルできます。
アシスタントがシナリオを組む方法
アシスタントは仕様内にテスト定義を捏造しません。シナリオは独立したホストワークフローで、OpenAPI 文書に保存されることはありません——x-scenarios キーや埋め込みステップは存在しません。
操作の設計とそのテストの両方を求めるとき、作業は順序付けられます。
- アシスタントはまず操作パッチだけを提案する。
- あなたが適用す ると、フローを実行するアクションカードを返す:
test.singleは単一操作向け。scenario.planはホストにエンドツーエンドフローを発見させる。scenario.runは順序付きフローを準備し実行する。
scenario.run カードは実行順(2〜8)で操作を列挙し、どのレスポンスフィールド、ヘッダー、状態を各後続リクエストに渡すかを含めて目標を述べます。各参照は現在の仕様から逐語的にコピーされます。
レポート
実行後、自己完結 HTML レポートをエクスポートできます。それは生の CLI 出力ではなく要約文書で、フロー、各ステップ結果、アサーション、最終結果を読みやすいレイアウトで提示します。
エクスポート時に言語を選びます。10 言語が組み込まれています。
- English
- 简体中文(簡体字中国語)
- 繁體中文(繁体字中国語)
- 日本語(日本語)
- 한국어(韓国語)
- Français(フランス語)
- Deutsch(ドイツ語)
- Español(スペイン語)
- Português — Brasil(ポルトガル語-ブラジル)
- العربية(アラビア語)
その他/カスタムオプションで独自言語を入力できます。
レポートは安全に共有できます。
- 認証情報は自動でマスクされ、トークンやキーが現れません。
- 大きなペイロードは折りたたまれ、全文貼り付けでなくレポートを読みやすく保ちます。
HTML は独立しているため、チケットに添付したりリリースごとにアーカイブできます。
シナリオを使う場面
- 多ステップ業務フロー(作成、読み取り、更新、削除)を検証する。
- 認証とトークン受け渡しが呼び出しをまたいで動くことを確認する。
- リリースや引き継ぎのため API 動作の証拠を作る。
- 契約変更後にフローを回帰確認する。