mablでは、APIが期待通りに動作していることを確認するためのテストを設定できます。APIが正しい形式で期待されるデータを返すことを確認するだけでなく、APIテストはチーム全体のテストワークフローにおいて重要な役割を果たすことができます。これには以下が含まれます。
- アプリケーションで課題を引き起こす前に、基盤となるAPIのバグを検出する
- UIテストのためのデータのセットアップと削除
- アプリケーションのバックエンドのパフォーマンスとスケーラビリティを負荷下で検証する
始めたばかりの場合は、この記事で説明されているステップを使用して最初のAPIテストを作成し、目標に基づいて適切な次のステップを選択してください。
APIを知る
この記事では、mablを使用して会社のAPIをテストするためのワークフローを概説します。テストするAPIがない場合は、よく理解している公開APIを使用してみてください。
テスト設定を構成する
新しいAPIテストを作成するには、テスト作成をクリックし、APIテストを選択します。最初のテストでは、コア設定セクションでテストに名前を付け、基本のAPI URLを入力するだけで十分です。
ベースAPI URLは、リクエストを送信したいAPIのルートURLです。例えば、mabl APIをテストする場合、ベースAPI URLはhttps://api.mabl.com
です。
作成をクリックして、APIテストエディターを起動します。
リクエストを追加
最初のリクエストを追加する前に、編集者の下部にある変数パネルを展開してください。このパネルには、テスト内の変数が表示されます。
変数api.url
は、テスト設定を構成したときに追加した基本API URLです。リクエストを追加するときは、api.url
変数を使用してリクエストエンドポイントを記述します。
変数パネル
最初のリクエストを追加するには、+ ステップを追加 ボタンをクリックしてください。APIテストエディターがリクエストの設定、テスト、およびレスポンスの検証用のフォームを読み込みます。
シンプルなGETリクエストを追加します。例えば、エンドポイントがhttps://api.example.com/users
の場合、mablの変数構文を使用してベースAPI URLを指定します: {{@api.url}}/users
。必要な認証やパラメータを忘れずに含めてください!
最初のリクエストを設定する
レスポンスを検証する
リクエストをテストする際に、アサーションを追加して、APIが期待通りのデータを適切な形式で返すことを検証してください。デフォルトでは、APIテストエディターはすべてのレスポンスに200ステータスコードのアサーションを追加しますが、検証と変数の割り当てセクションで必要に応じて更新できます。
何をテストすべきか分からない場合は、次の例のいずれかを実装して、APIのコア機能を検証してみてください。
- エンドポイントが異なるシナリオで正しいHTTPステータスを返すことを確認する。有効なデータでリクエストを作成し、APIが200レスポンスを返すことを確認します。不正な認証やデータが欠落しているリクエストを追加し、APIが適切なエラーメッセージとステータスコードを返すことを確認します。
- CRUD操作をテストして、データが正しく処理されていることを確認します。 リソースを作成するリクエストを追加します。レスポンスからリソースIDを変数に保存し、同じリソースに対してGET、PUT/PATCH、DELETEメソッドをテストするために後続のリクエストで使用します。
ほとんどのユースケースはローコードアサーションでサポートされていますが、スクリプトを使用して、XMLペイロードの検証など、より複雑な検証を行うこともできます。
テストが期待通りに動作することを確認するには、編集者の左上隅にある再生ボタンをクリックしてください。
編集者でステップを実行する
テストの実行
完了したら、テストを保存してAPIテストエディターを閉じてください。
テストを実行するには、テスト実行ボタンをクリックし、次のオプションから選択してください。
- クラウド実行(推奨): mablクラウドからテストを実行し、アプリ内で詳細なテスト出力を確認します。
- ローカル実行: テストをローカルマシンから実行し、出力ウィンドウで結果を確認します。あなたのAPIが公共のインターネットからアクセスできず、mabl Linkを設定していない場合は、このオプションを使用してください。
さまざまなテスト実行環境についての詳細はこちらをご覧ください。
次のステップ
現在の設定と達成したいことに応じて、次のステップには以下についてもっと学ぶことが含まれるかもしれません。
- はじめに
- 高度なAPIテスト
- UIテストとの統合