Thunder Clientは、APIテスト用のVSCodeの拡張機能として、VSCodeから直接にAPIリクエストを送信できるため、非常に便利なツールです。本文では、Thunder Clientの環境と変数の利用ガイドを皆さんに紹介します。Thunder Clientの環境と変数への理解を深めると、よりAPIをテストすることができるのでしょう。
Thunder Clientとは
Thunder Clientは、Visual Studio Codeの拡張機能で、APIクライアントとしての機能を提供するツールです。主な機能として、APIテストの他、コレクション、テストスクリプト、CI/CDインテグレーション、Git連携、ローカルストレージなどが言及されています。VS Codeで大人気なGUIのAPIテストツールとして、多くのユーザーは、Thunder ClientをPostmanの代替品として使用しています。
API開発での環境と変数の利用について
API開発プロセスで、多くの場合は異なる環境を分ける必要があります。このように異なる環境が必要となる理由は主に次ようになります:
- 開発環境と本番環境を分けることで、開発中にシステムに影響を及ぼさずに済みます。
- 本番向けのパフォーマンスチューニングやセキュリティ要件を開発環境には適用しなくてよくなります。
- 異なるデータベースを利用できるので、本番データと開発用テストデータを分離できます。
- 多段階のテスト環境を用意することで、積極的なテストができるようになります(開発/ステージング/本番など)。
つまり、APIの機能開発とテスト実行効率の向上、システムへの影響抑制が主な目的です。 コストや手間はかかりますが、中長期的には品質と安定性の向上につながります。
API開発での変数は必ず環境依存?
API開発では、利用する変数にはさまざまなタイプがあります。結論から言うと、必ずしも全ての変数を環境に依存させる必要がなくなると思います。
API開発プロセスで主に次のような変数がよく利用されています:
- ローカル変数 - 関数やブロックの中で宣言される変数、そのスコープ内でのみ参照できます。
- グローバル変数 - 関数の外で宣言される変数、プログラムのどこからでも参照できます。
- 環境変数 - 作成した環境に強く関連している変数、参照できるのは同環境内のもののみ、他の環境内の環境変数を参照できません。
変数の値をハードコーディングするのではなく、環境変数やコンフィグファイルを使うことで環境に依存させることが多いですが、状況によってはその必要性が低い場合もあります。
例えば、アプリケーションの内部的な定数的な変数の場合、それをグローバル変数に設定すると、すべての環境で同じ値を利用したいことがあるでしょう。また、ロジック上のフラグや一時変数のような処理用の変数も、環境によって変わる必要はあまりないでしょう。
一方で、資産パスや外部サービスの接続設定、機密情報といった変数に関しては、できる限り環境変数を使って環境依存させることをおすすめします。
したがって、変数の用途や用法に応じて環境依存の必要性を個別に判断することが大切です。全ての変数を環境依存させる必要があるわけではありません。
Thunder Clientの環境と変数の利用
Thunder ClientはAPIテスト用のツールとして、環境と変数を作成することをサポートしています。この部分では、Thunder Clientの環境と変数機能を別々に紹介してきます。
Thunder Clientの環境の利用ガイド
Thunder Clientでは、自分のニーズに従って、環境を作成することができます。ここで利用できる環境のタイプは3つあります。
- グローバル環境(Global Env)
- ローカル環境(Local Env)
- カスタム環境
グローバル環境とローカル環境は、Thunder Clientのデフォルトの環境タイプになり、1つしか作成できません。また、特定のニーズがある場合、「New Environment」をクリックして、カスタム環境を作成することもできます。
Thunder Clientの変数の利用ガイド
Thunder Clientで利用可能な環境に従って、ここで利用可能な変数タイプもグローバル変数、ローカル変数及び環境変数といった3つあります。つまり、グローバル環境(Global Env)で追加した変数がグローバル変数になり、ローカル環境(Local Env)で追加した変数がローカル変数になり、カスタム環境に追加した変数が環境変数になります。
Thunder Clientで変数を定義して利用する方法は下記:
ステップ⒈VSCodeでThunder Clientを開き、「Env」タブをクリックして切り替えます。
ステップ⒉このタブで縦の三本線のアイコンをクリックして、「New Environment」をクリックします。グローバル環境やローカル環境を作成するには、「Global Environment」と「Local Environment」をクリックしましょう。
ステップ⒊環境が作成されると、それが左側で表示されます。各環境をクリックして、右側のパネルで変数名と変数の値を追加することで、それぞれのタイプの変数を追加できます。
バグ発見:日本語をコピべはできますが、直接に入力できない状態になっちゃうっw 当時のデバイスとバージョン状況はこちら:Macbook Pro 2021 (M1 Proチップ)、Visual Studio Code バージョン: 1.82.2 (Universal)、Thunder Clientv2.16.2
変数が追加されると、リクエストを送信する時に、どこのオプションでも{{変数名}}
の形で変数を適用することができるようになります。
ご案内:カスタム環境、ローカル環境、グローバル環境でも同じ変数名が存在している場合、変数の適用優先度は、環境変数>ローカル変数>グローバル変数になります。
Apidogで環境と変数をより簡単に利用する
Apidogは、Thunder Clientよりも強力で使いやすいAPI管理ツールになります。Apidogの日本語UIで、環境や変数を簡単に設定することができます。また、非常に優れたコラボレーション機能を提供しているので、チームの開発効率をかなり向上することができます。
次の画像のように、Apidogの環境管理画面で、変数を簡単に設定することができます。
また、APIリクエストを送信するときに、右側の環境アイコンをクリックすると、環境を簡単に切り替えることもできます。
これにより、API開発の環境と変数をより便利に管理することができ、自分のニーズに従ってより正確的なリクエストを送信することもできるようになります。このようにして、APIテストのプロセス制御することが簡単になります。
まとめ
この記事では、APIテストツールのThunder Clientにおける環境と変数の設定・利用方法について解説しました。Thunder ClientはVSCode上でGUIベースのAPIテストができる便利な拡張機能です。
API開発には通常、開発/テスト/本番など、複数の異なる環境を分けることが多く、変数設定もグローバルとローカルと環境依存のものを状況に応じて使い分ける必要があります。
Thunder Clientでも環境と変数の設定が可能ですが、より強力で使いやすいツールとしてApidogがあります。Apidogは日本語UIを備え、環境と変数の設定を直感的に行えます。優れたコラボレーション機能もあるため、チームでのAPI開発効率が大きく向上できます。環境切り替えも簡単なApidogを使えば、テスト実行時の動作変更がスムーズに行えるようになり、API開発プロセスをより適切に制御できるようになるでしょう。