Thunder Client の使い方:スクリプト中の`tc`オブジェクトの使い方

APIテストをさらにレベルアップさせたいと考えたことはありませんか?Thunder Clientは、その有料版のスクリプト機能を利用することで、APIテストの可能性を広げる強力なツールです。このガイドでは、特にtcオブジェクトを使った高度なユースケースを詳しく解説します。APIのテストを効率化し、より精度の高い結果を得るための秘訣が詰まっていますので、是非ご覧ください。

APIテストをワンランクアップしたいですか?Thunder Clientは、その有料版で利用可能なスクリプト機能を駆使することで、その可能性を広げます。このガイドでは、tcオブジェクトを使って様々な高度なユースケースを実現する方法を詳しく解説します。

Thunder Client.png
Thunder Client の使い方:Postmanスクリプトの変換方法
API開発者として、効率的なツールの選定は重要です。現在Postmanを使用しているけれど、VS Code環境で作業を統一したいと考えている方に朗報です。Thunder Clientはその希望をかなえるシンプルで高速なAPIクライアントです。このガイドでは、PostmanスクリプトをThunder Clientに変換し、作業を一元化する方法を詳しく説明します。実際のニーズに合わせて、簡単に移行できるポイントを押さえて、作業効率を大幅に向上させましょう。

Thunder Clientの紹介

Thunder Clientは、Visual Studio Code用の軽量なREST APIクライアントで、APIテストを簡素化することを目的としています。環境変数の設定、レスポンスからのデータ抽出、テストアサーションの実行などが可能で、これらの高度なタスクには有料版のスクリプト機能が欠かせません。

Thunder Client の使い方:利点とインストール方法
API開発において、ツールの選択は非常に重要です。この記事は、Visual Studio Code (VS Code) 用に特別に設計された軽量の REST API クライアント拡張機能「Thunder Client」の利点とインストール方法について詳しく解説します。このツールは、シンプルで使いやすいデザインと、強力な機能を兼ね備えています。初めての方でも理解しやすいように、目的からインストール手順、そして便利な代替ツールである EchoAPI までを包括的にカバーしています。さあ、API開発を次のレベルへ進めましょう!

tcオブジェクトを使ったスクリプティング

グローバル変数

tcオブジェクトは、Thunder ClientにおけるAPIアクセスの主要なハブです。tcに加え、Chaiアサーションライブラリのexpectassert、Base64エンコードのbtoa、デコードのatobも利用可能です。

ビルトインライブラリ

Thunder Clientは、様々なタスクに対応するいくつかのビルトインライブラリを提供しています:

  • axios: PromiseベースのHTTPクライアント
  • chai: アサーションライブラリ
  • crypto-js: 暗号化操作
  • fs: ファイルシステムモジュール
  • http/https: HTTPおよびHTTPSモジュール
  • uuid: UUIDジェネレーター

axiosの使用例

const axios = require('axios');
const response = await axios.get("https://www.thunderclient.com/welcome");
console.log(response);

リクエストの管理

リクエストオブジェクト

tc.request.idtc.request.urltc.request.methodtc.request.headerstc.request.bodyなどのプロパティにアクセスし、修正ができます。

ヘッダーの修正

tc.request.setHeader('Content-Type', 'application/json');
const contentType = tc.request.getHeader('Content-Type');
console.log(contentType);

ボディの修正

tc.request.setBody({ key: "value" });
console.log(tc.request.body);

レスポンスの管理

レスポンスオブジェクト

このオブジェクトは読み取り専用で、tc.response.statustc.response.timetc.response.contentTypetc.response.jsontc.response.textなどのプロパティを持ちます。

ヘッダーとクッキーへのアクセス

const responseHeader = tc.response.getHeader('Set-Cookie');
console.log(responseHeader);

const binaryResponse = tc.response.getBinary();
console.log(binaryResponse);

高度なメソッド

変数の操作

tc.setVar('myVar', 'value');
const myVar = tc.getVar('myVar');
console.log(myVar);

リクエストの実行と再試行

await tc.runRequest('reqId');

await tc.retryRequest();

リクエストのスキップ

tc.skipRequest('reqId');

なぜEchoAPIが優れた代替品なのか

EchoAPIを検討してみてください

代替品を検討するなら、EchoAPI for VS Codeが非常に使いやすい強力な協調ツールです。EchoAPIは、API設計、デバッグ、自動テスト、負荷テストなどの機能をサポートし、シンプルかつ効率的にAPI開発を行うための超軽量なツールです。

EchoAPIの主な特徴:

  1. ログイン不要:サインアップの手間なくすぐに使用開始できます。
  2. Scratch Padサポート:簡単なメモや一時的なコードに使用できます。
  3. 非常に軽量:高速かつ効率的に設計されています。
  4. Postmanスクリプト構文と100%互換性あり:既存のスクリプトを変更なしで使用できます。

EchoAPIは、IntelliJ IDEA、VS Code、Chromeのリクエストキャプチャ拡張機能とシームレスに統合され、API開発ワークフローを大幅に改善します。

EchoAPI for VS Code.png

tcオブジェクトの力を最大限に活用することで、Thunder Clientを使用した高度なAPIテストが可能になります。Thunder ClientやEchoAPIのどちらを選んでも、どちらのツールもAPIワークフローを効率化する強力な機能を提供しています。テストを楽しんでください!