ガイド
API テストガイド
各ガイドは、api.testingapis.com の無料 API を相手に 1 つの作業を解決します。わざとリクエストを失敗させる、SOAP サービスを呼び出す、認証フローをテストする、リストのすべてのページをたどる、といった作業です。リクエストとコードはライブの API に対して実行しており、載せているレスポンスは実際に返ってきたものです。
背景にある考え方はAPI テストのチュートリアルで、すべてのエンドポイントとパラメーターはAPI ドキュメントで確認できます。
- 好きなときにエラーを返すモック APIテストが必要とするときにいつでも、500、Retry-After 付きの 429、タイムアウト、途中で切れたボディを受け取れます。
- テスト用の無料 SOAP API(WSDL 付き)WSDL 付きの電卓サービスと国のサービス。どちらも SOAP 1.1 と 1.2 で応答します。
- あらゆる API 認証方式のテスト用エンドポイントBasic、Digest、Bearer トークン、API キー、HMAC 署名、JWT、OAuth 1.0a、PKCE 付き OAuth 2.0 を、資格情報付きで。
- API ページネーションの例:offset、ページ、カーソル、キーセット、Link ヘッダー、HAL同じデータに対する 6 つのページネーション方式を、それぞれ実際のレスポンスと全ページを取得するループ付きで。
- 書き込みが保存される JSONPlaceholder の代わり同じ種類のリソースで、書き込みは保存され、不正な入力は拒否され、エラーも好きなときに起こせます。
- C# の HttpClient で HTTP 503 の処理をテストするHttpClient が 503 をどう扱うか、Retry-After を守る DelegatingHandler、ライブの API に対する xUnit テスト。
- multipart/form-data のファイルアップロードをテストするcurl、JavaScript、Python、C# でファイルをアップロードし、サーバーが受け取った内容を正確に確かめ、boundary のミスを避けます。
- C# の HttpClient のタイムアウトと CancellationTokenタイムアウトとキャンセルの違い、リクエストごとのタイムアウトのヘルパー、ResponseHeadersRead の抜け穴、遅い API に対するテスト。
- .NET の System.Text.Json で不正な JSON を扱うReadFromJsonAsync が壊れた JSON や扱いにくい JSON をどう扱うか、例外を投げないケース、それぞれをわかりやすいエラーにする読み取り方法。
- xUnit による API の統合テストライブの ToDo API に対する 6 つの xUnit テスト、共有 API をテストするときのルール、実行用の GitHub Actions ワークフロー。