Apidog

オールインワン協働API開発プラットフォーム

API設計

APIドキュメント

APIデバッグ

APIモック

自動テスト

2025年最新:最強のgRPCテストツール

gRPC (Google Remote Procedure Call) は、Google が開発したオープンソースのリモートプロシージャコール (RPC) システムとして、近年多くのユーザーに利用されています。本文ではgRPCをテストするために、最も役立つツールを皆さんに紹介していこうと思います。

中村 拓也

中村 拓也

Updated on 5月 28, 2025

gRPC (Google Remote Procedure Call) は、Google が開発したオープンソースのリモートプロシージャコール (RPC) システムとして、近年多くのユーザーに利用されています。本文ではgRPCをテストするために、最も役立つツールを皆さんに紹介していこうと思います。

💡
ApidogでgRPCを利用・テストする最強のツールとして、gRPCプロジェクト作成、.protoファイルのインポート、Unary実行やストリーミング実行の方法、動的値の自動生成、変数の使用、TLS接続、サーバーURLと環境の管理、Protoファイルとパラメータの確認など、様々な機能を実現することができます。

個人利用完全無料のツールになりますので、次のボタンから無料で利用してみましょう👇👇👇
button

gRPCとは?

gRPCは、Googleが開発したオープンソースの高性能なリモートプロシージャコール(RPC)フレームワークです。簡単に言うと、gRPCの「g」はGoogleのことを指していて、Googleが開発したRPCのことになります。

gRPCは、Protocol Buffers(protobuf)というシリアライゼーション形式を使用して、クライアントとサーバー間の効率的な通信を可能にします。クライアントとサーバーの間でストリームや双方向通信をサポートすることができます。また、多言語に対応しており、さまざまなプログラミング言語で使用することができます。

gRPCのデータ送信プロセス

gRPCの利用シーン

gRPCは分散システム、特にマイクロサービスアーキテクチャでの効率的な通信手段として広く利用されています。その高性能・効率性ゆえに、これからより多くの分野でも活用が広がっていくと期待されますね。

マイクロサービスアーキテクチャ

  • 分散したマイクロサービス間の効率的な通信に適している
  • 高性能かつリソース効率が良いため、大規模システムでの利用に適する

モバイルアプリケーション

  • クライアント(モバイルアプリ)とサーバー間の通信に使える
  • プロトコルバッファによるメッセージ最小化でモバイル通信に適する

リアルタイムストリーミング

  • 双方向ストリーミングに対応しているため、リアルタイム通信に適する
  • 音声/映像のストリーミング
  • リアルタイムチャット、ゲームなど

遠隔プロシージャコール (RPC)

  • 本来の目的通り、分散システム内のRPCに使用可能
  • 異なるプログラミング言語間のRPCも可能

クラウドサービスや API の提供

  • RESTful APIに比べて高速で効率的なAPIを提供可能
  • マイクロサービスをクラウドサービスとして提供する際に活用

gRPCテスト用ツールのおすすめ:Apidog

gRPCを利用する場合、gRPCのテストツールを活用してその正確な動作を保証する必要があります。それでは、どちらのgRPCテストツールを選択すれば良いのですか?次は、一番使いやすいgRPCツールを皆さんに紹介します。

button

Apidogは、APIの設計、開発、デバッグ、テスト、モックなどの機能をも一体化した包括的なプラットフォームです。Apidogは、gRPC APIに完璧に対応できますので、gRPCを利用したり、テストしたりする必要がある場合、Apidogに簡単に.protoファイルをインポートして、UnaryやServer Streamingなどの実行方法でgRPCを利用・テストできますので、非常に便利です。また、ApidogはGUIのツールで日本語にも対応しているので、簡単に使いこなすことができるのでしょう。

ApidogでgRPCのテストや利用ガイド

ApidogでgRPCのテストや利用を開始するには、次のステップを参照すれば、簡単に実現することができます。

gRPCプロジェクトの作成

Apidogのホームページで「新しいプロジェクト」ボタンをクリックして、gRPCプロジェクトを新規作成することができます。

grpcgRPCプロジェクトの作成

Protoのインポート

gRPCは、API中心のテクノロジーなので、開発に移る前に、.protoファイルを通じて、サービス、方法およびメッセージを定義する必要があります。そこで、Apidogを使用して、gRPCの単体テストを行う前に、APIの定義として.protoファイルをインポートする必要があります。

初のインポート

現在、.protoファイルをインポートするには、2つの方式が利用できます。

  • ローカルファイル
  • .protoファイルのURL
grpcProtoのインポート
  • .protoファイルは1つのprotoとしてインポートされ、その中のserviceはサービスになり、rpcは方法になります。
  • 当該.protoファイルは他の.protoファイルに依存している場合、手動で依存関係を追加する必要もあります。
  • .protoファイルは他の.protoファイル内のserviceに依存している場合、そのpackage は、選択の .protoファイルの packageと同じな場合、同じな Protoにインポートされます。

再インポート

インポートした.protoファイルが変更された場合、Apidogでそれを再インポートすることができます。Protoを右クリックして、「再インポート」をクリックします。

grpcProtoの再インポート

実行の方法

.protoファイルを使用して、 gRPCの方法を定義する場合、以下のように4つの方法が利用できます。

  • Unary:一元実行
  • Server Streaming:サーバーのストリーミング
  • Client Streming:クライアントストリーミング
  • Bidirectional Streaming:双方向ストリーミング

一元実行

一元の実行は、HTTPリクエストに似ています。アドレスバーにURLを入力して、「Message」タブでJSONフォーマットでメッセージを入力した後、「実行」ボタンをクリックします。

grpc一元実行

ストリーミング方式

ストリーミング方式は、Websocketの接続に似ています。「Message」タブでJSONフォーマットでメッセージを入力して送信できます。サーバーストリーミング、クライアントストリーミング、双方向ストリーミングは、全てストリーミング方式に属しています。

Apidogは、タイムラインを備えており、時間順に実行の状態、送受信のメッセージを表示します。メッセージをクリックすると、メッセージの詳細を見ることができるので非常に便利です。

grpcストリーミング方式
button

高度なオプション

動的値の自動生成

Apidog は、.protoファイルの内容を識別できるので、「自動生成」をクリックして、送信メッセージを自動的に生成できます。また、動的値ボタンをクリックして、動的値を利用することもできます。

grpc動的値の自動生成

変数の使用

gRPCのメッセージとMetadataで、Apidogの変数を利用できます。

grpc変数の使用

TLSをオンにする

gRPC APIは、TLSを通じて安全に接続することができます。

Apidogを使用すると、URLの前のプロトコルをクリックして、TLSの状態を快適に切り替えます。

また、URLに「grpcs://」を使用すると、ApidogはTLSをオンにします。それに対して、「grpc://」の場合は、TLSは無効になります。

grpc TLSをオンにする

サーバーのURLと環境の管理

URLアドレスの右側にある「+」アイコンをクリックして、現在利用中のサーバーURLを環境に追加することができます。

grpc サーバーのURLと環境の管理

そして、右上で環境やサーバーのURLを選択し、URLの設定を「デフォルトを継承」にすることで、すべての方法も同じなURLで単体テストを行うようになります。

URLの設定を「デフォルトを継承」にする

ProtoファイルとAPIのパラメータを確認

Protoファイルの内容を確認

Apidogの左側にメニューツリーのProtoをクリックすると、Protoファイルのオリジナル内容を確認できます。

Protoファイルの内容を確認

リクエストとレスポンスのパラメータを確認

gRPCはシーケンス化フォーマットとしてProtoBufを使用しています。これは、メッセージの送受信の際に、各メッセージがProtoBufフォーマットで転送されることを意味しています。ProtoBufは、他のテキストに基づくフォーマット(JSON,XML)とは異なり、バイナリ形式なので、人間がそれを読み書きしたりすることが難しくなります。

そこで、ApidogでgRPC APIを呼び出す際には、すべてのメッセージをJSONフォーマットで作成したり、表示したりしています。

APIの情報ページで、JSONフォーマットで表示されているレスポンスとパラメータの情報を確認できます。

リクエストとレスポンスのパラメータを確認

ProtoBufは、 JSONデータとの間、次のようなマッピング関係が存在しています。

PROTOBUF 3 JSON JSONのサンプル
message object {"fooBar": v, "g": null, …}
enum string "FOO_BAR"
map<K,V> object {"k": v, …}
repeated V array [v, …]
bool true, false true, false
string array "Hello World!"
bytes base64 string "YWJjMTIzIT8kKiYoKSctPUB+"
int32, fixed32, uint32 number 1, -10, 0
int64, fixed64, uint64 string "1", "-10"
float, double number 1.1, -10.0, 0, "NaN", "Infinity"
button

まとめ

この記事では、gRPC (Google Remote Procedure Call) について説明し、gRPCをテストするための最適なツールであるApidogの利用方法を詳しく解説しています。

ApidogでgRPCを利用・テストする最強のツールとして、gRPCプロジェクト作成、.protoファイルのインポート、Unary実行やストリーミング実行の方法、動的値の自動生成、変数の使用、TLS接続、サーバーURLと環境の管理、Protoファイルとパラメータの確認など、様々な機能を実現することができます。

そこで、gRPCを利用したり、テストしたりする必要がある場合、ぜひApidogというツールを活用してください。

IT初心者必見!Google Drive MCPサーバーでAIを強化する方法チュートリアル

IT初心者必見!Google Drive MCPサーバーでAIを強化する方法

MCPサーバーは、AIをソフトウェア開発でより効果的なパートナーにし、生産性を向上させます。Google Drive MCPサーバーはAIのデータ統合を簡素化し、API開発ではApidog MCPサーバーが重要な役割を果たします。

Oliver Kingsley

5月 22, 2025

Ollama完全ガイド:ローカルLLMをゼロからマスターするチュートリアル

Ollama完全ガイド:ローカルLLMをゼロからマスターする

Ollamaを使用すると、誰でも簡単にローカルで高度なAIモデルを実行できます。開発者や愛好家が、その直感的なシステムと強力なAPIを通じて、AIの可能性を探求しプライバシーを確保し、コストを削減できます。

中村 拓也

4月 28, 2025

Postmanの基本的な使い方を(初心者向け)チュートリアル

Postmanの基本的な使い方を(初心者向け)

Postmanは、APIテストなどを行うための定番のツールになります。API戦略を実施する場合は、Postmanを利用することで、その効率性を大幅に向上できます。そこで、本文では、基本的なPostmanの使い方を皆さんに紹介して、Postmanを全く使ったことがないユーザーでも、本文の内容を参照して、Postmanを使いこなすことができると思います。

中村 拓也

4月 8, 2025