WebApiのテストをする GUIツールの Insomniaをインストールして、テストを楽にしましょう。
こんにちは。
開発者でなくサーバーを作っている人間と言っても、WebAPIのサーバー環境を作ることはあると思います。
これのテストをする際に、curlコマンドや httpコマンド、または Webブラウザでやっても良いのですが、専用のツールを使うと捗りますので、フリーで使えるものを導入してみましょう。
本家サイトはこちら。
Insomnia
日本語で「不眠症」って何これ。
2022年11月13日時点での料金体系はこんな感じです。
Free | $0 user/year |
Individual | $50 user/year |
Team | $120 user/year |
対象は Free版になりますね。
環境は Lubuntu 22.04ですので、Ubuntu Desktop 22.04と同じとしますね。
2022年11月13日時点で、aptリポジトリにはなく snapリポジトリに 2022.6.0 がありましたので snap版を入れます。
subro@Lubuntu2204:~$ sudo snap install insomnia
insomnia 2022.6.0 from Insomnia (getinsomnia) installed
インストールできました。
Lubuntu 22.04のデスクトップのメニューでは、[(スタートの鳥?)] - [プログラミング] - [Insomnia] になりましたね。
早速実行してみましょう。
こういう画面になりました。
丁度「Fresh(Deno製フレームワーク)」で実行したチュートリアルのプログラムに WebAPIがありますから、それで試してみたいと思います。
Deno Freshのプロジェクトを実行しまして…
Insomniaの URLの箇所にこのように入力し(メソッドは [GET] で良いです)、Sendを押します。
右のペインがこのようになりました。
[headers]タブはこのように。。
[cookies]タブは空でした。
[timeline]タブはこのように。。
テストで使ったのが簡単な WebAPIでしたのでこんな風なんですが、機能はもっと豊富です。
HTTPを理解していれば、メニューにあるものやタブの意味など、勉強しなくても一通り分かってすぐに使えると思います。
どちらかと言うと開発者向けのデバッグツールなんですが、サーバーエンジニアでもテストで使ったような簡単なものではなく、認証もあれば引数やデータを添付する HTTPリクエストを投げないといけないことも多いと思います。
いくつもの種類のテストをやらねばならない場合に、curlでやるより大分手間が減って楽になると思いますね。
使い込んでいないのでハッキリしていませんが、実施したテストの内容をファイルにセーブ/ロードができそうなので、テストのシナリオとして管理しておくことも可能のように見えます。
またテス 1つ 1つを「curlコマンドの場合はこう」というコマンドライン文に変換してくれる機能もあるようなので、テストのスクリプト化にも寄与すると思います。
Free版での評価なので有償版で使えるプラグインを使った時にどういう強化がなされるのか分かりませんけど、名前からしてチームで使うのに役に立つ機能が提供されるんでしょうね。
最後に、Webブラウザに付いているツール、例えば Firefoxであれば「開発ツール」との比較ですが、Firefoxの開発ツールは画面デザインをする人やレスポンスタイムを測りたい人向け、Insomniaは WebAPIでやりとりされる中身を手軽に観たい人向けかと思います。
Firefoxの開発ツールを使えば間に合うので、昨今では Insomniaのようなツールの出番がどれ程あるかは若干微妙ではあります。
「でもこれがあると知っていれば使うかも〜」と思いましたね。
但し InsomniaはHTTPを理解していることが前提です。
メニューに書いてある言葉が何かわからない場合は、このような本でお勉強してから再チャレンジすると、スルッと分かるようになりますよ。
2つとも古いんですけど、私はこれで勉強しましたねぇ、懐かしいです。