2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Postmanを使用】APIレスポンステストで詰まったところ 

Last updated at Posted at 2020-07-15

#APIレスポンステストとは
自身が設定したHTTPのレスポンスのステータスコードと実際のデータを含んだレスポンスボディが正しく返ってくるかテストします!
これらは、実際にAPI仕様書等見れば記載があると思いますので、確認してみてください:v:

※補足です

ステータスコードとは

今回のAPIによって返されるステータスコードは以下になります。
APIの動きによってこちらのコードと照らし合わせる事でテストします。

  • 200: OK - リクエストは成功し、レスポンスとともに要求に応じた情報が返される。
  • 201: OK - POSTリクエストでデータが一つ追加される。
  • 401: Unauthorized - 認証失敗。認証が必要である。
  • 403: Forbidden - 禁止されている。リソースにアクセスすることを拒否された。
  • 404: Not Found - 未検出。リソースが見つからなかった。
  • 500: internal server error - インストールの失敗、互換性の問題、サーバーのアクセス権限の設定ミスなどが原因として上げられます。

レスポンスボディとは

自身が設定したカラムのデータの内容です。
GETリクエストの場合は単にリクエストボディに要求したデータが入っているかをテストします。
POST、PUT、 DELETE リクエストの際にはそれぞれ要求したデータ通りの動きをするかテストします。

#Postmanとは
APIの動作を確認するツールです:point_up:
それだけではなく認証、テスト、ドキュメント作成、バージョン管理など幅広く活用できる便利なツール&サービスになっています!

今回は、認証やテストしか触れていませんが、他の機能も今後触れていきたいですね:grin:
まずは下記URLでPostmanをダウンロードしてください!!
※この記事では基本的な使い方は紹介していないので、詳しい使い方は最後の行に参考URL記載しています!!
https://www.postman.com/
image.png

#APIレスポンステストで詰まったところの例
ここからはAPIレスポンステストを具体例を挙げて紹介します!
割と基本的なところで詰まってしまったりしたんですけど、同じ様なところで詰まっている方いれば、参考にしてください:relaxed:

  • 画像の挿入の仕方
    今回は、form_dataを用いて画像挿入しました:smiley:
    もし、base64文字列を読み込む設定がアプリにあるなら画像をbase64のコードにデコードしてjson形式で読み込めます!
  1. Bodyからform-dataを選択して、KEY入力欄のプルダウンから、Text → Fileに変更
  2. VALUEで挿入したい画像を選択
    スクリーンショット 2020-07-15 11.46.25.png
  • ストロングパラメーター設定時の入れ方

例えば、あるコントローラーで下記の様に設定されている場合
スクリーンショット 2020-07-15 11.50.41.png

下記の様に許可しているキーを指定してあげないとparam is missing or the value is emptyとなってしまいます。
スクリーンショット 2020-07-15 12.02.05.png

  • 関連付けしているカラムの入れ方

またまた、下記の様なコントローラーの設定があったします。
スクリーンショット 2020-07-15 21.12.04.png

見ての通り多対多の関連づけがされているものがあります。
こういう時Postmanではどの様に記載するのかといいますと下記の様になります。
スクリーンショット 2020-07-15 21.17.40.png

  • ログイン状態の維持
    アプリにbrfore_action: authenticate!の様な認証設定があれば、ログイン状態でテストしたい時があります。そういう時は、下記の様にAutherizaitonのキーを押してTokenTypeを選択して、認証をすればログイン状態でテストできます:thumbsup:
  1. まずはログインしたいユーザーでログインしてアクセストークンを取得します。
    スクリーンショット 2020-07-15 17.35.58.png

  2. 取得したアクセストークンを下記の様に入力すれば、ログイン状態でAPIのテストが実施できます。
    ※今回はBarear Tokenを指定しています。アプリによって設定が違うと思いますので、確認してみてください!!
    スクリーンショット 2020-07-15 17.35.37.png

#まとめ

Postmanをしようして詰まったところをまとめてみました!
これから同じ様な内容で詰まる方の参考になれれば嬉しいです:relaxed:

#参考URL

  • 今回の記事ではPostmanの使い方を詳しく紹介していないので下記に簡単に紹介されています!

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?