Postman チュートリアル – API テストに使用するには?
何ですか Postman?
Postman は、CI/CD パイプラインにすぐに統合できるスケーラブルな API テスト ツールです。 これは、テストと開発における API ワークフローを簡素化するための Abhinav Asthana によるサイド プロジェクトとして 2012 年に始まりました。 API は Application Programming Interface の略で、ソフトウェア アプリケーションが API 呼び出しを介して相互に通信できるようにします。
なぜ使うの? Postman?
現在 4 万人を超えるユーザーがおり、 Postman ソフトウェアが選ばれるツールとなった理由は、次のとおりです。
- アクセシビリティ – 使用するには Postman ツールを使用すると、自分のアカウントにログインするだけで、いつでもどこでもファイルに簡単にアクセスできるようになります。 Postman アプリケーションがコンピュータにインストールされている。
- コレクションの使用 – Postman ユーザーが自分のコレクションを作成できるようにします Postman API 呼び出し。各コレクションはサブフォルダーと複数のリクエストを作成できます。これは、テスト スイートを整理するのに役立ちます。
- コラボレーション – コレクションと環境をインポートまたはエクスポートできるため、ファイルを簡単に共有できます。 直接リンクを使用してコレクションを共有することもできます。
- 環境の作成 – 複数の環境があると、同じコレクションを異なる環境で使用できるため、テストの繰り返しが少なくなります。 ここでパラメータ化が行われます。これについては、後のレッスンで説明します。
- テストの作成 – HTTP 応答ステータスの成功の検証などのテスト チェックポイントを各テストに追加できます。 Postman API 呼び出しにより、 テストカバレッジ.
- 自動テスト – Collection Runner または Newman を使用すると、テストを複数回繰り返して実行できるため、繰り返しのテストにかかる時間を節約できます。
- デバッグ – Postman コンソールは、どのデータが取得されたかを確認するのに役立ち、テストのデバッグを容易にします。
- 継続的インテグレーション – 継続的統合をサポートする機能により、開発慣行が維持されます。
使用方法 Postman APIを実行するため
以下は Postman ワークスペース。段階的なプロセスを見てみましょう 使用方法 Postman のさまざまな機能 Postman ツール!
- 新規 – ここで、新しいリクエスト、コレクション、または環境を作成します。
- インポート – コレクションまたは環境をインポートするために使用されます。 ファイル、フォルダーからインポート、リンクまたは生のテキストを貼り付けるなどのオプションがあります。
- ランナー – 自動化テストはコレクション ランナーを通じて実行できます。 これについては、次のレッスンでさらに詳しく説明します。
- 新規を開く – 新しいタブを開きます。 Postman このボタンをクリックすると、ウィンドウまたはランナー ウィンドウが表示されます。
- マイ ワークスペース – 新しいワークスペースを個人またはチームとして作成できます。
- 招待 – チームメンバーを招待して、ワークスペースで共同作業します。
- 履歴 – 過去に送信したリクエストは履歴に表示されます。これにより、実行したアクションを簡単に追跡できます。
- コレクション – コレクションを作成してテスト スイートを整理します。 各コレクションにはサブフォルダーと複数のリクエストが含まれる場合があります。 リクエストやフォルダーも複製できます。
- リクエスト タブ – 作業中のリクエストのタイトルが表示されます。デフォルトでは、タイトルのないリクエストには「無題のリクエスト」が表示されます。
- HTTP リクエスト – これをクリックすると、GET、POST、COPY、DELETE などのさまざまなリクエストのドロップダウン リストが表示されます。 Postman API テストで最も一般的に使用されるリクエストは GET と POST です。
- リクエスト URL – エンドポイントとも呼ばれ、API の通信先へのリンクを識別します。
- 保存 – リクエストに変更がある場合は、新しい変更が失われたり上書きされたりしないように、[保存] をクリックする必要があります。
- Params – ここに、キー値などのリクエストに必要なパラメータを書きます。
- 認可 – API にアクセスするには、適切な認可が必要です。 ユーザー名とパスワード、ベアラー トークンなどの形式である場合があります。
- ヘッダー – 組織のニーズに応じて、コンテンツ タイプ JSON などのヘッダーを設定できます。
- 本文 – ここでは、POST リクエストでよく使用されるリクエストの詳細をカスタマイズできます。
- リクエスト前スクリプト – これらはリクエストの前に実行されるスクリプトです。 通常、設定環境の事前リクエスト スクリプトは、テストが正しい環境で実行されることを保証するために使用されます。
- テスト – これらはリクエスト中に実行されるスクリプトです。 応答ステータスが正常であるかどうか、取得されたデータが期待どおりであるかどうかを確認するためのチェックポイントを設定するテストやその他のテストを行うことが重要です。
GET リクエストの操作
Get リクエストは、指定された URL から情報を取得するために使用されます。 エンドポイントには変更は加えられません。
この例ではすべて次のURLを使用します。 Postman チュートリアル https://jsonplaceholder.typicode.com/users
ワークスペースで
- HTTP リクエストを GET に設定します。
- リクエストURLフィールドにリンクを入力します
- 送信をクリック
- 200 OK メッセージが表示されます
- 本文には、テストが正常に実行されたことを示す 10 件のユーザー結果があるはずです。
*注意: ゲットする場合もあるかもしれません Postman リクエストは失敗する可能性があります。リクエスト URL が無効であるか、認証が必要であることが原因である可能性があります。
POSTリクエストの操作
Post リクエストは、ユーザーがエンドポイントにデータを追加するデータ操作があるため、Get リクエストとは異なります。 前のチュートリアルの Get リクエストと同じデータを使用して、独自のユーザーを追加しましょう。
ステップ1) 新しいタブをクリックして新しいリクエストを作成します。
ステップ2) 新しいタブで
- HTTP リクエストを POST に設定します。
- リクエスト URL に同じリンクを入力します。 https://jsonplaceholder.typicode.com/users
- 「本文」タブに切り替えます
ステップ3) ボディでは、
- 「生」をクリックします
- JSONを選択
ステップ4) 以下のように、前の get リクエストから 11 つのユーザー結果をコピーして貼り付けます。コードが中括弧と角括弧のペアで正しくコピーされていることを確認します。id を XNUMX に変更し、name を任意の名前に変更します。アドレスなどの他の詳細を変更することもできます。
[ { "id": 11, "name": "Krishna Rungta", "username": "Bret", "email": "Sincere@april.biz", "address": { "street": "Kulas Light", "suite": "Apt. 556", "city": "Gwenborough", "zipcode": "92998-3874", "geo": { "lat": "-37.3159", "lng": "81.1496" } }, "phone": "1-770-736-8031 x56442", "website": "hildegard.org", "company": { "name": "Romaguera-Crona", "catchPhrase": "Multi-layered client-server neural-net", "bs": "harness real-time e-markets" } } ]
*注意: 要求されたデータが確実に作成されるように、オンライン投稿リクエストは正しい形式である必要があります。 最初に Get を使用してリクエストの JSON 形式を確認することをお勧めします。 次のようなツールを使用できます https://jsonformatter.curiousconcept.com/
ステップ5) 次に、
- 送信をクリックします。
- ステータス: 201 作成済みと表示される
- 投稿されたデータが本文に表示されます。
リクエストをパラメータ化する方法
データのパラメータ化は、の最も便利な機能の 1 つです。 Postman。異なるデータを使用して同じリクエストを作成する代わりに、パラメーターを含む変数を使用できます。これらのデータは、データ ファイルまたは環境変数から取得できます。パラメータ化は、同じテストの繰り返しを避けるのに役立ち、反復を次の目的で使用できます。 自動化テスト.
パラメータは二重中括弧を使用して作成されます: {{sample}}。前のリクエストでパラメータを使用する例を見てみましょう。
次に、パラメータ化された get リクエストを作成しましょう。
ステップ1)
- HTTP リクエストを GET に設定します
- このリンクを入力してください: https://jsonplaceholder.typicode.com/users。 リンクの最初の部分を {{url}} などのパラメータに置き換えます。 リクエスト URL は {{url}}/users になるはずです。
- 送信をクリックします。
パラメータのソースを設定していないため、応答はありません。
ステップ2) パラメータを使用するには環境を設定する必要があります
- 目のアイコンをクリックします
- 「編集」をクリックして、変数をすべてのコレクションで使用できるグローバル環境に設定します。
ステップ3) 変数では、
- 名前を https://jsonplaceholder.typicode.com の URL に設定します。
- 「保存」をクリックします。
ステップ4) 次の画面が表示された場合は、「閉じる」をクリックします
ステップ5) Get リクエストに戻り、[送信] をクリックします。 これで、リクエストに対する結果が得られるはずです。
*注意: エラーを避けるために、パラメーターには環境変数やデータ ファイルなどのソースがあることを常に確認してください。
作り方 Postman テスト
Postman テストは Javaリクエストに追加されるスクリプト コードで、成功または失敗のステータス、予想される結果の比較などの結果の検証に役立ちます。通常は pm.test で始まります。他のツールで使用できる asserts や verify コマンドと比較できます。
基本的なことをやってみましょう APIテスト Postman 前のレッスンのパラメータ化リクエストの場合。
ステップ1) 前のチュートリアルの GET ユーザー リクエストに移動します。
- 「テスト」タブに切り替えます。 右側にはスニペットコードが表示されます。
- スニペットセクションから、「ステータスコード: コードは 200」をクリックします。
ペインには自動入力されます
ステップ2) 次に、[送信] をクリックします。テスト結果が表示されます。
ステップ3) [テスト] タブに戻って、別のテストを追加しましょう。 今回は、期待される結果と実際の結果を比較してみます。
スニペットセクションから、「Response body:JSON value check」をクリックします。 Leanne Graham がユーザー ID 1 を持っているかどうかを確認します。
ステップ4)
- コードの「Your Test Name」を「Check if user with id1 is Leanne Graham」に置き換えて、テスト名がテスト対象を正確に指定できるようにします。
- jsonData.value を jsonData[0].name に置き換えます。 パスを取得するには、先ほどの結果の取得で本文を確認します。 Leanne Graham はユーザー ID 1 であるため、jsonData は最初の結果にあり、0 で始まる必要があります。1 番目の結果を取得したい場合は、後続の結果に jsonData[XNUMX] などを使用します。
- eql に「Leanne Graham」と入力します。
pm.test("Check if user with id1 is Leanne Graham", function () { var jsonData = pm.response.json(); pm.expect(jsonData[0].name).to.eql("Leanne Graham"); });
ステップ5) 「送信」をクリックします。 これで、リクエストに対して XNUMX つの合格したテスト結果が得られるはずです。
*注意: で作成できるさまざまな種類のテストがあります Postman。ツールを試して、どのようなテストがニーズに合うかを確認してください。
コレクションの作成方法
コレクションは、テスト スイートを編成する際に重要な役割を果たします。 インポートおよびエクスポートできるため、チーム間でコレクションを簡単に共有できます。 このチュートリアルでは、コレクションを作成して実行する方法を学びます。
コレクションの作成を始めましょう。
ステップ1) ページの左上隅にある「新規」ボタンをクリックします。
ステップ2) 「コレクション」を選択します。 コレクションの作成ウィンドウが表示されます。
ステップ3) 目的のコレクション名と説明を入力し、「作成」をクリックします。 これでコレクションが作成されるはずです。
ステップ4) 前の Get リクエストに戻ります。 「保存」をクリックします
ステップ5)
- クライムワークスで空を駆け抜ける旅、始まる。 Postman テストコレクション。
- [保存先]をクリックします Postman テストコレクション
ステップ6) Postman テスト コレクションには 1 つのリクエストが含まれるようになりました。
ステップ7) 前の Post リクエストに対して手順 4 ~ 5 を繰り返し、コレクションに XNUMX つのリクエストが含まれるようになります。
Collection Runner を使用してコレクションを実行する方法
コレクションを実行するには、Collection Runner と Newman の XNUMX つの方法があります。 まず、Collection Runner でコレクションを実行します。
ステップ1) ページ上部の「インポート」ボタンの隣にある「ランナー」ボタンをクリックします。
ステップ2) コレクションランナーページは以下のように表示されます。以下は各フィールドの説明です。
ステップ3) 実行する Postman 以下を設定してコレクションをテストします。
- 選択する Postman テストコレクション - 反復を 3 に設定します
- 遅延を 2500 ミリ秒に設定します
- 「実行」をクリックします Postman テスト…ボタン
ステップ4) [実行] ボタンをクリックすると、[実行結果] ページが表示されます。遅延に応じて、実行中のテストが表示されます。
- テストが完了すると、テストのステータスが合格か失敗か、および反復ごとの結果を確認できます。
- Get リクエストの Pass ステータスが表示されます
- Post にはテストがなかったので、リクエストにテストがなかったというメッセージが表示されるはずです。
HTTP リクエストのステータスが成功し、データが作成または取得されたかどうかを確認できるように、リクエストにテストを含めることがいかに重要であるかがわかります。
Newman を使用してコレクションを実行する方法
コレクションを実行するもう 1 つの方法は、Newman を使用することです。Newman と Collection Runner の主な違いは次のとおりです。
- Newman は次のアドオンです Postman。ネイティブアプリとは別にインストールする必要があります。
- Newman はコマンド ラインを使用しますが、Collection Runner は GUI を備えています。
- Newman は継続的統合に使用できます。
Newman をインストールしてそこからコレクションを実行するには、次の手順を実行します。
ステップ1) このリンクを使用して、nodejs をインストールします。 http://nodejs.org/download/
ステップ2) コマンドラインを開いて次のように入力します
npm install -g newman
これで、Newman がコンピュータにインストールされるはずです。
ステップ3) Newman がインストールされたら、元のページに戻りましょう。 Postman ワークスペース。コレクション ボックスで、3 つのドットをクリックします。オプションが表示されます。エクスポートを選択します。
ステップ4) [コレクションをコレクション v2.1 (推奨) としてエクスポート] を選択し、[エクスポート] をクリックします。
ステップ5) 目的の場所を選択し、「保存」をクリックします。専用のフォルダーを作成することをお勧めします。 Postman テスト。これで、コレクションが選択したローカル ディレクトリにエクスポートされるはずです。
ステップ6) 環境をエクスポートする必要もあります。 「グローバル」の環境ドロップダウンの横にある目のアイコンをクリックし、「JSON としてダウンロード」を選択します。 目的の場所を選択し、「保存」をクリックします。 環境はコレクションと同じフォルダーに置くことをお勧めします。
ステップ7) 環境はコレクションと同じローカル ディレクトリにエクスポートされるはずです。
ステップ8) 次に、コマンド ラインに戻り、コレクションと環境を保存したディレクトリに変更します。
cd C:\Users\Asus\Desktop\Postman Tutorial
ステップ9) 次のコマンドを使用してコレクションを実行します。
newman run PostmanTestCollection.postman_collection.json -e Testing.postman_globals.json
実行結果が以下のように表示されるはずです。
ガイドとして、実行用の基本的な Newman コードへの参照を示します。
- コレクションのみを実行します。 これは、環境やテスト データ ファイルの依存関係がない場合に使用できます。
- コレクションと環境を実行します。 -e インジケーターは環境用です。
- 希望の番号でコレクションを実行します。 反復の。
- データファイルを使用して実行します。
- 遅延時間を設定します。 前のリクエストがエンドポイント サーバー上で処理を完了しないままリクエストが開始されるため、遅延なくテストを実行すると失敗する可能性があるため、これは重要です。
newman run <collection name>
newman run <collection name> -e <environment name>
newman run <collection name> -n <no.of iterations>
newman run <collection name> --data <file name> -n <no.of iterations> -e <environment name>
newman run <collection name> -d <delay time>
クリニックについて Postman 面接の質問ガイド 面接を突破し、夢のソフトウェア テストの仕事に就くのに役立ちます。
まとめ
- を使用した API テスト Postman: Postman APIをテストするためのアプリケーションです。 Postman Web サーバーにリクエストを送信し、レスポンスを返す API テストで使用される最も人気のあるツールの 1 つ
- アクセシビリティ、コレクションの使用、コラボレーション、継続的インテグレーションは、学習すべき重要な機能の一部です。 Postman
- でアカウントを作成することをお勧めします Postman、あなたのコレクションがオンラインで利用できるようになります
- リクエストをパラメータ化できます Postman
- Postmanリクエストを検証するためのテストを作成できます
- コレクションは Newman または Collection Runner を使用して実行できます