APIを適切にテストするのに有償ライセンスは必要ありません。無料のブラウザベースツールや無償のデスクトップツールでも、リクエストの送信、ステータスコードの確認、レスポンスボディのアサート、そしてリリース前に小規模なリグレッションテストスイートの実行が可能です。難しいのはツールを見つけることではなく、作業が本格的になったときに実際に必要な機能がひっそりと制限されないツールを見つけることです。
この記事では、実用レベルで役立つ無料オンラインAPIテストツールをまとめています。各項目では、無料プランで実際に何が提供され、どこに制限があるかを明記しているため、後で予期せぬ料金が発生することなくツールを選択できます。目標は、APIの利用が拡大しても使い続けられるツールであり、1ヶ月で使い捨てになるツールではありません。
「無料オンライン」が実際に意味するもの
「オンライン」という言葉は曖昧に使われがちです。一部のツールはインストール不要で完全にブラウザタブ内で動作します。また、ウェブ経由で同期する無料のデスクトップアプリもあります。さらに、オープンソースという第三のグループもあり、これらは永続的に無料ですが、自分でホストまたは実行する必要があります。これら3つはすべて有効です。重要な区別は、無料プランの利用制限です。
一般的な3つの制限に注意してください。1つ目は共同作業です。多くのツールはソロでのテストは無料ですが、チームメイトが参加した途端にシートごとに課金されます。2つ目は実行履歴とモニタリングで、無料プランでは数日分の結果しか保持されません。3つ目は自動化の量で、スケジュール実行やCIトリガーによる実行が従量課金制となる場合があります。これらはどれも致命的な問題ではありませんが、どの制限にぶつかるかを知っておくべきです。テストで何をカバーすべきかについてより深い定義が必要な場合は、テストシナリオとテストケースの違いが良い出発点となります。
時間を費やす価値のあるツール
Apidog
Apidogは、APIの設計、デバッグ、自動テスト、モック、ドキュメント作成を組み合わせたオールインワンのAPIプラットフォームです。無料プランはREST、GraphQL、SOAP、WebSocketをサポートし、連鎖リクエストによるテストシナリオの構築が可能で、クレジットカードなしで実行できます。視覚的なアサーションと組み込みのモックサーバーにより、まだ存在しないエンドポイントに対してもテストできます。Windows、macOS、Linuxでデスクトップアプリとして動作し、クラウド同期機能があります。設計とテストを1ヶ所で行いたいチームにとって、通常ツールを繋ぎ合わせる手間を省きます。Apidogをダウンロードして無料プランを開始しましょう。
Hoppscotch
Hoppscotchは完全にブラウザベースのオープンソースツールです。インストールは不要です。REST、GraphQL、WebSocketを扱い、環境とコレクションをサポートし、高速です。無料のホスト版はソロでの作業には非常に寛大です。その代償として、高度なコラボレーションと履歴は有償のチームプランの背後にあり、複雑な自動化は専用のテストツールよりも軽量です。
Postman(無料プラン)
Postmanは、多くの開発者が最初に手にするデフォルトのツールです。無料プランは、手動リクエスト、コレクション、環境、そして月に制限された数の自動実行をカバーします。ドキュメントが豊富で広く理解されています。制限はコラボレーションシートと呼び出し量です。他のツールと比較検討している場合は、PostmanでAPIをテストする方法に関するガイドでワークフローを詳しく説明しています。
Insomnia
Insomniaは、REST、GraphQL、gRPC向けのクリーンなデスクトップクライアントです。無料プランは個々のテストや小規模なスクリプトスイートに快適です。多くの人がデバッグに好む、集中力が高く整理されたインターフェースを持っています。Insomniaを使ってAPIをテストする方法の実際の手順については、ウォークスルーをご覧ください。
SoapUI(オープンソース)
SoapUIはSOAPテストの長年の選択肢であり、RESTも扱えます。オープンソース版は無料で、機能テストやデータ駆動テストに強力です。重いJavaデスクトップアプリであり、洗練されたレポーティング機能は有償のReadyAPIプランにあります。レガシーサービスにおけるプロトコルの深さで、その地位を確立しています。
Thunder Client
Thunder ClientはVS Codeの拡張機能として動作します。エディタがすでに開いている場合、テストは同じウィンドウ内でコンテキスト切り替えなしで行われます。無料プランはソロリクエストとコレクションを十分にカバーします。スクリプト不要のテストは快適ですが、Gitベースの同期機能やチーム機能は有償です。
比較表
| ツール | タイプ | プロトコル | 無料プランの強み | 主な制限 |
|---|---|---|---|---|
| Apidog | デスクトップ + クラウド同期 | REST, GraphQL, SOAP, WebSocket | 完全な設計、テスト、モック、ドキュメント | 大規模チームは有償シートが必要 |
| Hoppscotch | ブラウザ, オープンソース | REST, GraphQL, WebSocket | インストール不要、高速 | 軽量な自動化 |
| Postman | デスクトップ + クラウド | REST, GraphQL, gRPC | 使い慣れており、ドキュメントが豊富 | 従量課金制の実行、有償シート |
| Insomnia | デスクトップ | REST, GraphQL, gRPC | クリーンなデバッグUX | テスト機能セットが小規模 |
| SoapUI | デスクトップ, オープンソース | SOAP, REST | SOAPとデータ駆動テストに特化 | 重いアプリ、レポーティングは有償 |
| Thunder Client | VS Code拡張機能 | REST, GraphQL | エディタ内での利便性 | 同期とチーム機能は有償 |
選び方
まず、実際にテストするプロトコルから始めましょう。RESTとGraphQLが主な場合、ここにあるほとんどのツールが使えます。SOAPが混ざっている場合は、オンラインSOAP APIテスターまたはSoapUIが非常に役立ちます。WebSocketが必要な場合は、Apidog、Hoppscotch、または専用のWebSocketクライアントに絞り込みましょう。
次に、ブラウザとデスクトップのどちらにするかを決めます。インストール不要や複数のマシンでの作業を望むならブラウザツールが有利です。ローカルネットワークアクセス、より大きなペイロード、オフライン作業が必要な場合はデスクトップアプリが有利です。さらに一歩先を考えてみてください。APIの設計とモックもできるツールは、後で別の製品を追加する手間を省きます。最後に、チームに導入する前にコラボレーションの制限を確認しましょう。プロジェクトの途中でコレクションを移行するのは面倒です。
簡単なテスト計画は、公正な比較に役立ちます。実際のAPIエンドポイントを1つ選び、各候補ツールでリクエストを送信し、ステータスコードとボディのフィールド1つにアサーションを追加します。次に、最初の値を使用する2番目のリクエストを連鎖させます。これをスムーズに行えるツールが、使い続けるべきツールです。これらのチェックを適切に構成するために、役立つAPIアサーションの書き方に関する私たちのメモは一読の価値があります。
無料ツールとCIパイプライン
よくある懸念は、無料ツールが継続的インテグレーションで動作しないことです。ほとんどのツールは動作します。PostmanはNewmanがCIで実行できるコレクションをエクスポートします。HoppscotchにはCLIがあります。Apidogは独自のランナーからシナリオを実行し、パイプラインと統合します。無料プランの制約は通常、機能そのものよりも実行量にあり、夜間実行スイートは問題ない一方で、活発なリポジトリでのコミットごとのスイートは有償プランへの移行を促す可能性があります。CIが目標である場合、CI/CDでAPIテストを自動化する方法に関するガイドでパターンをカバーしています。
CIテストのもう一つの側面は、スイートの健全性を保つことです。無料ツールはリクエストを記録してテストと呼ぶことを容易にします。しかし、本当のテストは特定の事柄をアサートします。ステータスコードをチェックし、レスポンスの形式をチェックし、ビジネスロジックが依存する値をチェックしましょう。REST APIが使用すべきHTTPステータスコードは、これらのアサーションの良好な基準となります。「200」だけをチェックするテストは多くのことを見落とすからです。
無料ツールでのよくある間違い
最初の間違いは、無料プランを後で置き換えるツールの試用版として扱うことです。無料プランで1年間生活できるようなツールを選びましょう。2つ目は、環境設定を省略することです。ベースURLやトークンをすべてのリクエストにハードコードすると、ステージングから本番環境に切り替える際にスイートを再構築することになります。ここにあるすべてのツールは環境変数をサポートしています。初日からそれらを活用しましょう。
3つ目の間違いは、レスポンス時間を無視することです。無料ツールはすべての呼び出しでレイテンシを表示します。100msで返るべきリクエストが800msかかっている場合、それはノイズではなく信号です。遅いエンドポイントに気づくために負荷テストツールは必要ありません。意図的な負荷作業については、APIパフォーマンステストチュートリアルでエスカレートすべき時期をカバーしています。4つ目は、作業をエクスポートしないことです。無料ホスト型プランは規約を変更する可能性があります。コレクションをファイルにエクスポートし、バージョン管理下に置いて、ツールが置き換え可能であるようにしましょう。
ブラウザツールとデスクトップアプリの詳細な比較
ブラウザとデスクトップの選択は、それがテストできる内容を静かに形成するため、一行で答えられるものではありません。ブラウザツールは、他のウェブページと同じセキュリティサンドボックス内で動作します。このサンドボックスは安全性には優れていますが、必要となる可能性のあるいくつかの機能をブロックします。localhostへの呼び出しやプライベートネットワークアドレスへの呼び出しは制限されることがあり、大きなファイルアップロードやバイナリペイロードは、ネイティブクライアントとは異なる動作をすることがあります。開発中にAPIが自身のマシンで動作している場合、ブラウザツールが実際にそれに到達できるかどうかを、ツールにコミットする前にテストしてください。
デスクトップアプリはこれらの制限を回避します。ソケットを直接開き、手間なくローカルサービスに到達し、ブラウザが邪魔することなく大きなペイロードを処理します。また、インターネットが途切れても動作し続けます。これは旅行中や停電中に人々が予想する以上に重要です。コストはインストール手順とアプリの更新を維持することです。実用的な中間点であり、ほとんどのチームが採用するのは、クラウドに同期するデスクトップアプリです。これにより、ネイティブネットワークアクセスと、コレクションがマシン間で追随する利便性の両方を得られます。Apidogはこの方法で動作するため、上記の表ではデスクトップとクラウド同期の両方の行に記載されています。
無料ツールのテストスイートを健全に保つ
無料ツールで構築されたテストスイートは、他のスイートと同様に劣化します。エンドポイントが変更され、フィールド名が変更され、先月パスしていたテストが静かに間違ったものをチェックし始めることがあります。数週間ごとにコレクションを短時間レビューするスケジュールを設定しましょう。存在しなくなったエンドポイントのテストは削除し、古いフィールドをチェックするようになったアサーションは更新してください。
作成後にではなく、作成中に明確に名前を付けましょう。「test 3」というリクエストは、半年後には何も教えてくれません。「create order with invalid currency」というリクエストは、それが何をカバーしているのか、なぜ失敗する可能性があるのかを正確に伝えます。関連するリクエストを、サインアップ、ログイン、注文などの実際のユーザーフローに一致するフォルダにグループ化しましょう。この構造により、スイートが読みやすくなり、フローにステップが不足している場合も明らかになります。テストケースに役立つ命名規律は、APIリクエストのコレクションにも役立ち、無料ツールは有料ツールと比べて命名オプションが少ないわけではありません。
よくある質問
無料APIテストツールは本番環境での作業に十分ですか?
はい、ほとんどのチームにとっては十分です。ここにある無料プランは、日々のAPIテストに必要なリクエストの構築、アサーション、環境設定、基本的な自動化をカバーしています。通常、テスト自体が不十分であるためではなく、チームシート、より長い実行履歴、または大量のCIのために有料プランに移行します。
無料オンラインツールでSOAP APIをテストできますか?
はい、できます。Apidogは無料プランでSOAPをサポートしており、SoapUIのオープンソース版はSOAP専用に作られています。SOAPにはXMLエンベロープとWSDLが必要なことが多いため、汎用RESTクライアントよりも明示的なSOAPサポートを持つツールが優れています。プロトコルの詳細については、W3Cの公式SOAP仕様をご覧ください。
ブラウザツールとデスクトップツールの違いは何ですか?
ブラウザツールはインストール不要でタブ内で動作し、複数のマシンで機能しますが、ローカルネットワーク呼び出しに関するブラウザのセキュリティによって制限される場合があります。デスクトップアプリは一度インストールすれば、ローカルサービスやより大きなペイロードにアクセスでき、多くの場合オフラインでも動作します。多くのチームは、両方の利点を得るためにクラウド同期機能付きのデスクトップアプリを使用しています。
無料ツールは自動テストスイートをサポートしていますか?
ほとんどのツールがサポートしています。リクエストを連鎖させ、アサーションを追加し、スイートとして実行できます。Postmanはコマンドライン実行のためにNewmanと連携し、HoppscotchとApidogは独自のランナーを持っています。無料プランの制限は通常、自動化が存在するかどうかではなく、月に実行できる自動実行の数です。
小規模チームはどの無料ツールから始めるべきですか?
後でツールを追加する必要がないように、設計、テスト、モックをまとめてカバーするツールを選びましょう。ApidogとHoppscotchはどちらも、無料プランで小規模チームに非常に適しています。それぞれで同じシンプルなテスト計画(2つの連鎖リクエストとアサーション)を実行し、自分のスタックで最もスムーズだと感じる方を使い続けましょう。
