APIテストの概要

mablは、ブラウザを介したE2Eテスト内で、APIステップを追加できます。それとは別に、テストしたいアプリケーションのAPIをエンドツーエンドで自動テストする「APIテスト」も可能になりました。ブラウザを介する必要があるブラウザテストとは異なり、APIテストはHTTPプロトコルといったメッセージレイヤで実行されるため、ブラウザテストよりもはるかに高速に実行されます。

ユースケース

APIテストのユースケースとして以下が考えられます。

  • ブラウザテストが依存するテストデータを高速に、確実にセットアップ・リセット(teardown)したい場合
  • ブラウザテストとAPIテストを同じPlanに設定して、変数の形でテストデータを共有したい場合
  • APIテストが機能性、信頼性、パフォーマンス、セキュリティに対して期待を満たしているか確認したい場合
2560

mabl API test run results.

APIテストを利用する際の流れ

APIテストをする場合の、おおまかな流れは以下のようになります。

  • Configuration > Application からAPIのURLを設定します。これによってさまざまな環境(Environment)からAPIテストを簡単に実行できます。
  • APIテストの有名ツールであるPostmanを使ってAPIテストを作りましょう。作成したテストはmablにインポートできるため、すでにPostmanスクリプトがある場合は、それを簡単に取り込めます。
  • mablでAPIテストを実行し、結果を確認します。
  • APIテストを更新する場合は、mablからも更新できますし、Postmanを使ってAPIテストを更新し、再度、mablにimportすることも可能です
  • mablでスケジューリング設定を行えば、デプロイや定期的なタイミングで自動実行可能です

📘

Enterprise機能

APIテストは、トライアルユーザーとEnterpriseサブスクリプションプランのお客様が使用できます。

FAQ

独自のAPIテストを定義するにはどうすればいいですか?

最初のAPIテストを作成する前に、環境を設定する必要があります。その後、左側のナビゲーションの [New test] をクリックし、[API test] を選択して開始します。詳細については、APIテストの作成についてのガイドを参照してください。

トレーニング済みのテストを編集することはできますか?

はい。ブラウザーテストと同様に、APIテストの編集と更新も、テスト詳細ページの [Edit test] ボタンをクリックすることで行えます。

mablのクラウドでのAPIテストはどのように実行されるのですか?

mablは、仮想化されたクラウドインフラストラクチャーを使用してAPIテストを実行します。クラウドでのAPIテストは、mablデスクトップアプリケーションでのローカルなAPIテスト実行と同じロジックを使用して実行されます。サーバーからの応答が収集され、テスト出力ページに表示されます。

APIテストの割り当てに影響するのは、どのようなものですか?

クラウドでAPIテストまたはAPIステップの一部として実行されるすべてのリクエストが、ワークスペースに対する毎月のAPIリクエスト割り当てに影響します。
たとえば、5つのAPIステップを持つブラウザーテストをクラウドで実行した後、20のAPIステップを持つAPIテストをクラウドで実行した場合、送信されたリクエストの総数は25です。APIテストの使用状況の詳細は、使用状況ページ ([Settings] > [Usage]) で見ることができます。
APIテストとブラウザーテストのローカル実行はどちらも、mabl TrainerおよびAPIテストエディターで実行されたステップを含め、割り当てにはまったく影響しません。

APIテストではブラウザーテストと同じ機能がサポートされますか?

現在、mablでのAPIテストでは、ブラウザーテストで利用できる次の機能がサポートされていません。

Postmanコレクションをmabl APIテストに変換できますか?

はい。Postmanコレクションをmablにインポートする方法の詳細については、こちらを参照してください。

APIテストステップではファイルのアップロードがサポートされますか?

はい。こちらの手順を実行することで、APIリクエストでファイルをアップロードできます。

APIテストではWebsocketにリクエストを送信できますか?

いいえ。APIテストは現時点ではWebsocketのテストをサポートしていません。Websocketのテストが必要なユースケースがある場合は、Mabl Product Portalでお知らせください。