徹底解説:APIのアサーションを実装する方法
APIアサーションは、APIテスト中の不可欠の一環になっています。APIアサーションを行うことで、APIレスポンスデータの正確さを検証して、APIの信頼性と安定性をも向上できます。本文では、APIアサーションの基本情報を紹介した上、非常に使いやすいAPIテストツールのApidogを利用して、レスポンスのアサーションを簡単に行う方法を紹介します。
APIアサーションは、APIテスト中の不可欠の一環になっています。APIアサーションを行うことで、APIレスポンスデータの正確さを検証して、APIの信頼性と安定性をも向上できます。本文では、APIアサーションの基本情報を紹介した上、非常に使いやすいAPIテストツールのApidogを利用して、レスポンスのアサーションを簡単に行う方法を紹介します。
APIのアサーションとは
APIのアサーションとは、APIのレスポンスデータが正常で意図した通りの内容かどうかを検証する処理のことを指します。具体的には以下のような検証を行います。
- レスポンスデータのステータスコードが正常値か確認
- レスポンスボディの内容が仕様通りか確認
- 特定のフィールド値が想定の範囲内か確認
- 重要なデータが存在するか、 NULLになっていないか確認
このように、APIから返されたデータが仕様通りで、処理を続行してよい正常なデータかを判定することがAPIのアサーションです。
APIアサーションのメリット
APIのアサーションを通じて、サーバーから返されたレスポンスデータが予期に応えるかどうかを判断できます。また、APIアサーションを行うことで、次のようなメリットが得られます。
- APIの異常動作や仕様変更を早期検知できる
- 安定稼働していることを継続的に検証できる
- リグレッションテストが実施しやすい
そこで、テスト自動化の際にはレスポンス検証のためにアサーションを組み込むことがベストプラクティスとされています。API品質向上に資する重要な処理といえます。
APIテストツール:Apidogで簡単にアサーションを
APIテストの際に、APIの正常性などを検証するために、アサーションを導入する必要があります。APIのリクエストを取得して取得するレスポンスのデータを対象にアサーションを行うと、API動作の正確さを保証することで、APIの信頼性と安定性を向上させることにも繋がっています。
それでは、APIテスト中に、レスポンスデータをアサートするには、どうしたらいいですか?ここでApidogというAPI管理ツールを皆さんに紹介します。このツールのAPIテスト機能を使う場合、「後処理」で簡単にアサーションを行うことができます。
ApidogでAPIアサーションを行う手順
ステップ⒈ Apidogを開き、APIのリクエストを送信する前に、「後処理」タブに切り替えて、「後処理を追加」から「アサーション」を追加します。
ステップ⒉ ここでJSONPath式を利用して、アサートの対象をレスポンスデータを抽出します。そして、「アサーション」でアサート条件を設定します。
ご案内:上記画像のように、ペット情報を検索するためのAPIを利用しています。このAPIのレスポンスデータ構造に従って、「$.data.category.id」というJSONPath式でレスポンスのデータからペットのIDを取得できます。アサート条件を「10より大きい」と設定します。
ステップ⒊ 「送信」ボタンをクリックして、レスポンスを取得します。ここでアサーションの結果はレスポンスの右側に表示されます。
上記のステップのように、Apidogを使うことで、非常に簡単な手順でAPIレスポンスのアサーションを行うことができます。
データベースに連携してリアルデータでアサートする
また、Apidogはデータベースに連携して、そこから直接にリアルなデータを取得して変数に設定することができます。このような場合、アサート条件で変数を適用すれば、データベース中のリアルデータを使用してレスポンスデータの正確さを検証することもできますので、非常に便利です。
まとめ
APIテストを実施する際、単にリクエストを送信してレスポンスを受信するだけでなく、レスポンスデータの内容検証が重要なプロセスです。これがAPIアサーションです。
Apidogは、このAPIアサーションを非常に簡単に実現できるツールです。レスポンスデータの特定部分をJsonPathで指定し、その値に対して想定内の条件を設定するだけで、アサート処理を実行できます。また、データベースとも連携が可能なので、実際の運用データを使った検証を行うこともできます。APIの正常性をリアルな視点でチェックできるのは大きなメリットといえます。
APIの設計・開発・運用のライフサイクル全体を通じて、Apidogによるアサーションテストを適切に組み込んでいくことが、信頼性と品質の高いAPI