システム開発に携わっていると、APIという言葉を聞いたことがある方は多いと思います。APIを利用することで、特定の外部システムの機能を呼び出して、自社サイトやサービスに新たな機能を追加できます。
一からプログラムを組む必要がなく、また効率的に開発を進められるため、APIの利用は普及しており、有名サービスの多くがAPIを提供しています。
本記事では、そんなAPIをシステムに組み込んだ場合に必要となるAPIテストについて、おすすめとなるテストツールを20件ご紹介します。
APIテストツールのランキング
- APIテストとは
- APIツールを選ぶ際のポイント
- おすすめのAPIテストツール30選
- 1. REST-Assured
- 2. Postman
- 3. Hoppscotch
- 4. ReadyAPI
- 5. ACCELQ
- 6. TestGrid
- 7. Katalon
- 8. SoapUI
- 9. Rapid API
- 10. Karate
- 11. Copado
- 12. JMeter
- 13. PowerShell
- 14. Fiddler
- 15. Talend API Tester
- 16. Tavern
- 17. Pact
- 18. Insomnia
- 19. Taurus
- 20. Dredd
- 21.Chakram
- 22.scenarigo
- 23.rnn
- 24.stepci
- 25.HTTPie
- 26.api fortress
- 27.Assertible
- 28.speedscale
- 29.Datadog
- 30.Frisby
- 【まとめ】まずはAPIテストツールを比較してみよう
APIテストとは
APIテストは、APIのテストを行う工程を指します。API(Application Programming Interface)とは、簡単に説明するとアプリケーションが外部と連携するための窓口をつくる機能です。
アプリケーションの一部を外部に向けて公開することで、第三者がその公開された機能を利用できるようになります。有名サービスの多くがAPIを提供しており、品質向上や作業効率化を目的として利用されています。
例えば、Googleが提供するAPIを利用すれば、サイト内へのGoogle Mapの埋め込みが容易となります。他にも、Twitterが提供するAPIを利用すれば、ツイートやタイムラインの取得といった機能をTwitterを開かなくても自社のサービスで利用可能です。
APIを利用して外部サービスを自社のサイトやサービスに取り入れることで、機能性や品質の向上また作業効率化にもつながります。このように便利なAPIですが、導入する場合は通常の実装機能と同様にテストを行う必要があります。
APIで提供された機能が正しく利用できているか、一部とはいえ外部機能を自社のサービスへと連携したことによるセキュリティは問題ないか、APIを呼び出す際の応答時間など、確認すべき事項はいくつかあります。APIテストでこれらの懸念事項を確認・検証して、連携に問題がないかを判断します。
APIツールを選ぶ際のポイント
APIツールを使う場合において、yamiをはじめとしたテキストに定義することによりテストをできるツールを選びましょう。
さらに、dockerで使いやすいことやCI上で実行することからCIとの親和性もポイントとなります。dockerで実行することから、コードを書かないで定義できるツールであれば手順が減り業務効率化につながります。
おすすめのAPIテストツール30選
APIテストツールはさまざまな種類がありそれぞれ特徴が異なります。この記事ではおすすめのAPIテストツールを30種類として紹介します。
おすすめのAPIテストツール | 特徴 |
REST-Assured | REST APIの自動テストが目的 |
Postman | Web APIをテストことが目的 |
Hoppscotch | Postmanをオープンソース化したツール |
ReadyAPI | さまざまな環境に統合されたAPIテストが可能 |
ACCELQ | クラウドベースのAPIテストツール |
TestGrid | 従来のAPIテストと比べて70%高速 |
Katalon | CI / CDツールやSOAPリクエスト、RESTをサポート |
SoapUI | オープンソースで提供 |
Rapid API | インターフェースがシンプルで使いやすい |
Karate | オープンソースでの運営 |
Copado | ローコードのクロスクラウドタイプ |
JMeter | Javaベースのテストツール |
PowerShell | Microsoftが開発 |
Fiddler | レスポンスやHTTPリクエストの確認がスムーズ |
Talend API Tester | Chrome拡張機能において利用可能 |
Tavern | APIから正しい情報を得られているか確認 |
Pact | サーバ側とクライアント側のずれが発生しにくい |
Insomnia | RESTベースのAPIテスト |
Taurus | オープンソースのAPIテスト自動化フレームワーク |
Dredd | npmによるインストールで利用可能 |
Chakram | シンプルな API テスト |
scenarigo | HTTP/gRPC サーバー向けのAPIテストツール |
rnn | 再帰型ニューラルネットワーク |
stepci | さまざまな言語を利用できるテストツール |
HTTPie | シンプルでなおかつ直観的な方法でツールを使える |
api fortress | オールインワンのAPIプラットフォーム |
Assertible | Webサービスにおいてテストできる |
speedscale | スクリプトを必要としないテストツール |
Datadog | 全てのアプリケーションやスタックの内部を監視できる |
Frisby | 迅速、簡単にREST APIのテストを実施 |
1. REST-Assured
REST APIの自動テストを行うためのツールです。REST APIとは、汎用性の高いWebサービスアプリケーション同士の通信をサポートするAPIの種類の1つです。
HTTPベースのAPIであり、JSON(JavaScript Object Notation)を利用したデータ転送を行います。オープンソースのJavaライブラリであるREST-Assuredは、無料でREST APIのテストを実施できます。GUIとしては提供されていないため、利用にはより専門的な知識が必要となります。
利用料:無料
参考:REST Assured
2. Postman
HTTP・HTTPS通信によってやり取りするAPIであるWeb APIをテストするためのクライアントアプリです。各種APIを簡単にテストできる機能、アップデートや変更に伴うモニタリング機能など、テスト支援機能が数多く搭載されています。
元々Chrome拡張機能として利用可能でしたが、現在は各プラットフォーム向けのクライアントアプリとして提供されています。
利用料:無料(8$/月のPostman Pro、18$/月のPostman Enterpriseの有料版が別途あります)
参考:Postman
3. Hoppscotch
Hoppscotchは2020年8月までPostwomanという名称で提供されていました。Postmanのオープンソース版となります。Web上で動くため、インストール作業も不要ですぐに利用できます。
利用料:無料
参考:Hoppscotch
4. ReadyAPI
APIの機能テストやパフォーマンステスト、セキュリティテストまで、あらゆる環境に統合されたAPIテストを実施できます。
利用料:下記サイトを参照ください。
https://www.xlsoft.com/jp/products/smartbear/p
参考:The All-In-One Automated API Testing Platform | ReadyAPI
5. ACCELQ
ACCELQは、クラウドベースで動くAPIテストツールです。コードを1行も記述しない、ゼロコードでのAPIテスト自動化が可能です。
料金:下記サイトを参照ください。
参考:Codeless API Test Automation | ACCELQ
6. TestGrid
従来のAPIテスト方法よりも70%高速という触れ込みと、使いやすいインターフェイスを備えたWebベースのAPIテストツールです。スクリプトレスAPIテスト、UIテストなど、プログラミングの知識を必要としないテスト自動化ツールとなっています。
料金:下記サイトを参照ください。
https://www.testgrid.io/pricing
参考:Api Testing | TestGrid TestOS
7. Katalon
Web、モバイル、およびデスクトップアプリケーションなど幅広くに対応しているAPIテストツールです。RESTおよびSOAPリクエスト、CI / CDツールをサポートしており、自動化された探索的テストが実行可能となります。
料金:無料(Studio Enterprise版は$1,899/年、Runtime Engine版は$1,499/年)
参考:Katalon
8. SoapUI
オープンソースで提供されているAPIテストツールです。複雑なAPIテストシナリオにも対応しており、品質重視のテストが可能です。
料金:無料
参考:SoapUI
9. Rapid API
多数のAPIテストに対応しているツールです。シンプルなインターフェースで、開発者でも非開発者でも、REST、SOAP、およびGraphQLAPIの詳細な検証に適した実用的なテストフローを容易に作成可能です。
料金:無料
10. Karate
オープンソースのAPIテストツールです。APIの機能周りのテストだけでなく、パフォーマンスや負荷テストも可能です。GUIを用いたテストも実施可能で、APIテスト自動化ツールとして国内でも導入事例の多いツールです。
料金:無料
参考:GitHub – karatelabs/karate: Test Automation Made Simple
11. Copado
ローコードのクロスクラウドAPIテストツールです。ユーザーがAPIの実行、サポート、ビルドを分析およびテストできるよう、テストフレームワークの一貫した開発をサポートします。
参考:Copado
12. JMeter
オープンソースとして提供されている、Javaベースのパフォーマンステストツールです。パフォーマンステストでも活用したいAPI機能テストを作成する場合に有効なツールです。
料金:無料
13. PowerShell
Microsoftが開発したCUIの1つです。コマンドラインを駆使することで、APIテスト自動化が可能となります。
料金:無料
参考:PowerShell とは – PowerShell | Microsoft Docs
14. Fiddler
HTTPリクエストやレスポンスを手軽に確認できるツールです。javascriptやcssといったファイルを本番サーバーにアップせずに、本番環境により近い環境で検証、修正できます。
料金:Pro版 $10/年 Enterprise版 $25/年
参考:Fiddler | Web Debugging Proxy and Troubleshooting Solutions
15. Talend API Tester
以前はRestlet Clientと呼ばれていた、Chrome拡張機能として利用できるテストツールです。クライアントサイドのAPI連携の実装をテストする場合に効果的です。
料金:無料
参考:Talend API Tester – Free Edition
16. Tavern
APIから情報が正しく取得されているかを確認できるテストツールです。導入方法は比較的簡単で、YAMLファイルに、テストしたいリクエストとレスポンスを記述して実行します。
料金:無料
17. Pact
アプリケーションの機能をそれぞれ「サービス」に分割し、それぞれのサービスを連携させてシステムを動かすマイクロサービスという考え方に対して利用されるAPIテストツールです。
ライアント (Consumer) 側とサーバ (Provider) 側のずれが発生しにくくなることを重視したツールであり、API のテストとモックを同時に生成でき、綿密なテストが実施できます。
料金:無料
18. Insomnia
RESTベースのAPIテストが行えるツールです。同APIの異なるパラメータを管理できるenvironment切り替え機能や、コマンド生成機能など、テストに便利な機能が複数搭載されています。
料金:一部無料(Individual版 $50/年 Team版 $120/年)
19. Taurus
オープンソースのAPIテスト自動化フレームワークです。JMeterなど、他のツールで作成されたスクリプトを流用できるため、乗り換え時に作成したコードを手放す必要がありません。また、レポーティング機能が充実しており、テストの動向を常に監視できる仕組みが標準搭載されています。
料金:無料
参考:Taurus
20. Dredd
オープンソースのAPIテストツールです。npmによるインストールのみで簡単に導入できます。主にバックエンドの実装に対してのAPIテストを行えます。
料金:無料
参考:Dredd — HTTP API Testing Framework
21.Chakram
Chakramはシンプルな API テストであり、包括的なテストを記述できるテストツールです。明確な内容を提供できるため、開発中もしくはリリース後でもJSON REST エンドポイントが正常に機能します。
Chai.jsを拡張する特徴であり、HTTP 固有のアサーションを加えられます。さらに、JavaScript のプロミスを使うことによって明確にできる特徴があるのです。
料金:要問い合わせ
参考:Chakram – REST API test framework
22.scenarigo
scenarigoはHTTP/gRPC サーバー向けのAPIテストツールです。シナリオベースであり、Goで記述していきます。テストシナリオはYAMLファイルとして記述することによって実行することが可能です。
料金:記載なし
23.rnn
rnnはニュートラルネットワークのクラスであり再帰型ニューラルネットワークです。自然言語や時系列などのシーケンスデータのモデリングを強力に行うことが特徴です。
forループを活用することによって、時系列の情報をエンコードする内部状況を変化させないようにイテレートしていきます。カスタマイズしやすいことをはじめとして使いやすいことが特徴です。
料金:記載なし
24.stepci
stepciはJSONやavaScript、YAMLなどさまざまな言語を利用できるテストツールです。さらに、gRPCやREST、GraphQLなどさまざまなAPIタイプを1つのワークフローでテストできます。
複数のテストを同時に進行でき、CI/CDもしくはローカルネットワーク上においてサービスをテストします。ドッカーやGitHub、Node.jsなどさまざまなツールと連携可能です。
料金:記載なし
参考:Automate API Testing & QA-stepci
25.HTTPie
HTTPieはシンプルでなおかつ直観的な方法でツールを使えるAPIテストです。ライブラリーコンテキストメニューやタブなどHTTPメソッドを利用できます。Webやデスクトップ向けであり、オープンソース型です。HTTPieは世界中の開発者に利用されているAPIテストです。
料金:記載なし
参考:APIs-HTTPie
26.api fortress
api fortressはモニタリングやモッキングなどを含めたオールインワンのAPIプラットフォームです。すべてのマイクロサービスまたはSDLCにおいて、品質を保つことが可能です。
このことで、本番環境における問題が半分に軽減でき、APIテストサイクルの150%削減もできます。リリースの信頼性を高めるほか、過去の傾向を可視化し分析することも可能です。
料金:記載なし
ライブテスト | 月額39ドル |
仮想クラウド | 月額149ドル |
リアル デバイス クラウド | 月額199ドル |
27.Assertible
Assertibleは自動QAツールを活用することによって、Webサービスにおいてテストできるツールです。多くの大手企業に導入されており、Webサービスにおける問題を最小限にすることが特徴です。APIテストを自動的にアップデートして同期出来るため、常に最新のAssertible API テストを利用できます。
料金:
プラン | Webサービス | テスト(1サービス) | リゾールトリテンション |
Personal | 2ドル | 10ドル | 1,000ドル |
Standard | 25ドル | 500ドル | 5,000ドル |
Startup | 25ドル | 500ドル | 5,000ドル |
Business | 50ドル | 1,000ドル | 10,000ドル |
参考:Assertible
28.speedscale
speedscaleはトラフィックを使うことでQAを自動化し、スクリプトを必要としないテストツールです。
ラントラフィックを基準としており、統合やパフォーマンス、カオステストなどのAPIテストをおこないます。スムーズで安全にトラフィックからテストを受けられるのです。
料金:
ディベロッパー | 無料 |
プロ | 月額99ドル |
エンタープライズ | 要問合せ |
参考:speedscale
29.Datadog
Datadogはテストをする規模や場所に関係なく、全てのアプリケーションやスタックの内部を監視できるテストツールです。
APIをはじめダッシュボードやログ、アラートなどアプリケーションからインフラストラクチャーまでの環境を監視することが可能です。30日間無料導入をでき、まずは試してみることができます。
料金:
無料体験プラン | 30日 |
Continuous Testing APIテスト | 5ドル 10,000テストごと(月額) |
Browser | 10ドル 10,000テストごと(月額) |
Parallel Testing (add-on) | 79ドル 並行テストを一度行った場合(月額) |
30.Frisby
Frisbyは、迅速かつ簡単に REST APIテストをできるテストツールです。EST APが従来通りの動きをしていることのほか、適切な値やプロパティ、型などを返すことを行っているかどうかの確認をします。
JSON 応答に対しても簡単に行うことができるなど、さまざまなプロセスにおいてスムーズにテストを進められる点が特徴です。
料金:要問い合わせ
参考:Frisby makes REST API testing-Frisby
【まとめ】まずはAPIテストツールを比較してみよう
APIの導入は、自社サイトやサービスの品質向上、開発作業効率化のためにも効果的です。APIのテストは、アプリケーション間の連携をパフォーマンスやセキュリティの観点で確認できる重要な工程であるため、テストツールを利用した正確で効率的なテストをおすすめします。
APIテストツールは数多く存在するため、それぞれを比較、検討して適切なツールを選択しましょう。