最近はREST APIを使うこと、作ることが多いので、テストに利用できるツールを調べてみました。
比較した機能
- シナリオ登録
- 複数のAPIを登録して連続で呼び出す機能
- 変数定義
- 変数(定数)を定義し、API呼び出しで利用する機能
- レスポンス抽出
- API呼び出し時のレスポンスから値を抜き出して以後の呼び出しで利用する機能
- エクスポート
- API呼び出し設定をファイル等にエクスポート/インポートする機能
一覧
名称 | シナリオ登録 | 変数定義 | レスポンス抽出 | エクスポート |
---|---|---|---|---|
Advanced REST client | × | × | × | △※1 |
Apache Jmeter ※2 | ○ | ○ | ○ | ○ |
DHC | × | × | × | ○ |
Insomnia REST Client | × | × | × | ○ |
RESTClient | × | × | × | ○ |
restclient-tool | × | × | × | × |
Postman | ○ | ○ | ○ | ○ |
※1 全てのプロジェクト一括でのエクスポート/インポートのみできる
※2 Apache JMeterは本来負荷テスト用のツール
まとめ
別のAPIの結果を使って呼びだすといった複雑なAPIもあるため、シナリオ登録とレスポンス抽出機能は欲しいところです。
調べてみたところでは、動作確認のために手軽に使いたいのであれば、Postmanが使いやすく、良い感じです。
テスト自動化などゴリゴリ作り込むとすると、Apache JMeterの方がDB呼び出しなどもできて便利です。(もしくは、この手のGUIツールで管理しきれないくらい複雑なテストケースについては、何かしらのテストフレームワークを使ってテストプログラムを作成する方がよいかもしれません。)