Hero img
PostmanでAPIをテストする方法

Postmanというツールを使ってAPIのテストを行う方法を解説します。

Postmanでjsonを返してくれるサーバが欲しかったが、サーバの建方、API追加の方法の備忘録です。特にPATHの追加修正に時間がかかりました。


目次

  • Postmanとは
  • Postmanを使うメリット
  • Postmanを使う
  • サーバを建てる
  • CollectionsでAPIを確認する
  • テストしてみる
  • GETのリクエストを修正する
  • Bodyに値を追加する
  • テストしてみる
  • 新たにAPIを追加する
  • APIパスを追加する
  • Postmanの知っておくべき機能
  • コードの確認
  • ドキュメントの確認
  • 変数
  • 変数の確認
  • 認証
  • リクエスト履歴
  • 個人的詰まった部分
  • まとめ

Postmanとは

Postmanは、APIの開発やテストを行うためのツールです。Postmanを使うことで、APIにリクエストを送信したり、レスポンスを受け取ったりすることができます。

Postmanを使うメリット

個人的にPostmanで良いなと思ったところは

  1. 1.簡単にクライアント、サーバー側を構築でき、テストが簡単にできる。
  2. 2.データのリスポンス内容が表示されるので、データの中身をすぐに確認できる。
  3. 3.curlコマンド、fetch(js)コード等コピーができる。
  4. 4.APIドキュメント自動で作成してくれる。

特に3,4のクライアント側のコード作成、ドキュメントの作成は非常にありがたいです。
デメリットとしては、初めの会員登録がある部分と、使い方が分かりづらい部分です。

Postmanを使う

Postmanはインストーラーは無くてもブラウザ上で動作するのでインストールしてもしなくてもどちらでも構いません。 ここではPOST,GET時に値を返してくれるような設定の方法をご紹介します。
いろいろなサイトを確認しても、新たなAPIパスを追加したり、修正する方法を詳しく書かれてなく、苦労しました。

サーバを建てる

初めて使う方はまずMock Serversからサーバーの作成を行って行きます。 1.Mock Servers 左のMock Serversを選んで、RequestURLに値を入れます。「ここではid」と設定しました。 postman-mockservers1

2.サーバー名を入れてサーバ作成をします。 postman-mockservers-input-name.png

3.サーバー作成完了 サーバーの作成ができました。アクセスするURLはここに記載されています。リクエストがある場合、ここに履歴が表示されます。 postman-mockservers-created

CollectionsでAPIを確認する

Mock Serversで作成されたものはこのCollectionsでAPIのテストや、API追加、修正、登録ができます。  

そのため、Mock Serversで一度サーバーを作成したあと基本的にこのCollections内を操作をします。 postman-collections-view

テストしてみる

サーバーができましたので一度テストをしてみます。
Collectionsのタブで、先ほど作成した、idを選択し、Sendボタンを押すと、下の枠で200OKと表示されます。
bodyが空で分かりづらいですが、接続が成功しています。 postman-test-get

GETのリクエストを修正する

GETリクエスト時bodyに値を返すように設定していきます。
サーバー側はapi名の下のものを修正します。 postman-serverside

Bodyに値を追加する

Defaultを開いて、下のBodyに「bodytest」と記入してみます。

最後に「Save」を押します。ここは忘れずに。 postman-response-bodytest

テストしてみる

api名をクリックして、Sendボタンを押すと、今度はbodyに「bodytest」が表示されます。
もし空だった場合は「Save」ボタンを押してないかもしれません。 postman-response-test-result

新たにAPIを追加する

url/idのGETの環境ができましたが、別のPATHを追加します。
一度Mock Serversでサーバーを作成したので、サーバー作成は不要です。
追加はCollectionsですることができます。

APIパスを追加する

1.リクエストの追加 右上のメニューから「add request」を押して追加します。 postman-addrequest

2.名前を変更する 新たにAPIが追加されたので分かりやすい名前に変更します。
私の場合「status」に設定しました。 postman-rename-apiname

3.PATHを入力 このAPIのパスを指定します。
ここもAPI名と同じく「status」に設定しました。 postman-input-path ここまでで、クライアント側の設定が終わりました。

4.サーバー側を作成する メニューから「Add example」をクリックします。
すると、api名と同じ名前の物が下に追加されます。 postman-add-example

5.リスポンスデータを修正する PATHを入力し、リスポンスのデータを追加し、josn形式に変更しました。 postman-json-response

6.テストしてみる api名をクリックして、Sendを押クリックするとBodyに先ほど設定した、Jsonデータが表示されます。 できない場合は「Save」ボタンを押してないかもしれません。
postman-json-request

これでとりあえず一通りのテストをすることができると思います。

Postmanの知っておくべき機能

PostmanでとりあえずAPIの作成ができたと思います。
ここからは、使うにあたって便利な機能をご紹介します。

コードの確認

Postmanで作成したものをプログラミング言語別でコードを生成されているので、コピペでテストができます。 postman-commandlist

ドキュメントの確認

Mock ServersのところからAPIのドキュメントの確認ができます。
リスポンスの内容や、リクエストのサンプルコードもあるので、かなりありがたいです。

postman-servers-document postman-document-view

変数

{{url}}と記入されている部分が何ぞや?どこで設定されているのかはここで確認、修正ができます。
もちろん新たに追加することもできます。 postman-variables

変数の確認

変数にカーソルをホバーさせると変数の中身を確認できます。 postman-view-variables

認証

認証の設定が可能です。個別クライアント側(リクエスト)でも認証の設定ができます。 postman-authorization

リクエスト履歴

リクエストを行った履歴が表示されているので、レスポンスのBodyを後でも確認することができます。 postman-requesthistory

個人的詰まった部分

  • サーバー側(レスポンス)の設定変更をどこですればいいのか、レスポンスbodyの設定もどこですればいいのかが分からなかった。
  • {{url}}とはどこですか?どこで、なんの値が設定されているのか判断できなかった。
  • 過去の履歴はどこで確認するのかが分からなかった。普通にHistoryタブから確認ができると思ったが、そこはクライアント側のみ、サーバ側が何を返したのか、実際に応答したのか、HEADERに何が入っていたのかを知りたかったんだけど、MockServersの中を確認するべきだったとは思わなかった。

まとめ

API関係では非常に有名なPostmanなので、使って見ると確かにとても便利だったのだが、日本語のドキュメントが少なく、Postmanの設計思想が私では理解するのに時間がかかってしまった。
便利な機能はたくさんあるので、今後APIテスト関係はPostmanを使って行きたいと思う。

関連記事

コメント

コメントを書く

質問や、間違いがありましたら、お気軽にどうぞ

※お名前とコメントの内容を入力してください。
※全てこのブログ上に公表されます。
※許可なく管理者によって修正・削除する場合がございます。 詳しくはプライバシーポリシーを参照ください