API は、現在使用されている多くの ウェブ サービスに統合されており、システムはさまざまな情報を送受信できます。 そのため、重要なサービス間の強力なリンクです。 そして、システムの重要な部分と同様に、それらをテストする必要があります。 サードパーティの API テスト ソリューション(Postman)を使用して、手動テストと自動テストの両方を実行できます (API 監視を含む )。 API は 、アプリケーション プログラミング インターフェイスの略です。 ソフトウェア間のインターフェイスです。 API を使用すると、アプリケーションはクライアントの介入なしで相互に会話します。 しかし、何千ものAPIが利用可能なPostmanは、これらのAPIを作成、テスト、共有、管理するために、APIの使用効率を高め、面倒ではありません。

この記事は、Postman、コレクション、その顕著な機能、および Postman コレクションのロード テストと 、LoadViewとの CI/CD パイプラインとの統合を設定する方法について理解するのに役立ちます。

ロードビューによるポストマンロードテスト

ロード テスト ソリューションを確認するか、LoadView で Postman を使用する方法の手順については、以下をお読みください

郵便配達人とは何ですか?

Postman は、開発チームが API を作成、共有、テスト、およびドキュメント化しやすくする、一般的な API クライアント ツールです。 API 仕様に従って要求をすばやく作成し、ステータス コード、ヘッダー、実際の応答本文自体などのさまざまな応答パラメーターを解剖することで、API エンドポイントを打つシームレスなユーザー エクスペリエンスを提供します。 これらの機能を活用して、継続的かつ自動化されたテストを行うことができます。 API に対する開発、文書化、テストを行うコンパニオン ツールとして使用され、REST API サーバー要求を行うユーザー インターフェイスを提供し、サーバーからの応答を表示します。

Postman は、ソフトウェア開発ライフサイクルで使用される API 開発ツールです。

  • API 開発
  • API テスト
  • API ドキュメント

Postmanは、APIを操作するための環境を提供するだけでなく、ブラウザのようなウェブページを要求するためにも使用できます。 アドレスバーに URL を入力し、ヒット send を押して HTML 応答を表示します。 Postman は、ユーザーが要求を送信する前、および応答を取得した後にスクリプトを追加する際にも役立ちます。 各要求をコレクションに格納でき、後ですべての要求を順番に実行できます。

郵便配達員インターフェイス

 

API テストとは

API テストでは、専用のツールを使用して、API をホストするサーバーに呼び出しを送信し、応答を取得します。 API テストの目的は、API が意図したとおりにリソースを取得、保存、または更新しているかどうかを、正しく実行し、検証することです。

API が特定のアクション (データの更新、データのフェッチ、データの削除、データの変更など) を実行することがわかっている場合、テストはそれらのアクションの結果をチェックする必要があります。 それは本来と同じように振る舞いますか? それが起こるべきではないときはどうですか? そして、結果はあなたが期待するものですか? API テストは通常ブラックボックステストですが、API のアクションの結果に事前にアクセスできる範囲で、検証が必要な応答が予想されることがわかります。

API テスト: 機能テストとロード テスト

前述のように、機能テストやブラックボックステストは、主に一連の仕様に対する基本的な機能のテストと、それらが機能するかどうかを観察することに関係しています。 API を開発サイクル内で移動してさらにテストする前に、基本的な API 機能が機能することが重要です。 開発者が、基本機能が適切にテストされていることを確認せずに機能テストからロード テストに移行すると、ロード テストと結果がスローされます。 機能テストの結果は、何かがうまくいったかどうかを観察するだけです。

一方、ロード テストは機能テストと似ていますが、これらの機能が多数の同時ユーザーに対してどのように立ち上がるか、または負荷をテストするロード テスト セットが違います。 ロード テストの結果には、これらの API エンドポイントが応答し、負荷の下で実行する方法を理解する必要があります。

郵便配達人の特徴

 

インポート要求

Postmanにはインポート機能があり、RAW CURLテキストを貼り付け、リクエストURL、ヘッダー、リクエスト本文、クエリパラメータ、承認トークンなどの詳細でフォーマットされたリクエストに変換できます。

 

複数のプロトコルとテクノロジーのサポート

ポストマン API クライアント機能を使用すると、REST、SOAP、WSDL、および GraphQL リクエストを送信できます。

 

テスト ケースの書き込み

追加された API を実行し、JSON/XML 応答と応答コード検証をアサートすることで応答検証を支援できるテスト ケースを作成できます。

 

コレクション

Postmanは、さまざまなプロジェクトのためのフォルダ構造を持つAPIを分離するのに役立つコレクションを作成するのに役立ちます。 コレクションの実行をサポートし、最終的にはコレクションのすべての API 部分を実行します。

 

JSON スキーマの検証

JSON スキーマを使用して、要求と応答の構造を定義できます。 これは、理解し、郵便配達人に読み取りやすくするJSONを美化し、構造化するのに役立ちます。

 

環境変数と動的変数を使用する

Postman で変数を作成し、異なる環境に基づいて、同じ変数が選択した環境に対して異なる値をマップできます。 これは、同じ API を使用する場合に役立ちますが、現実の世界では複数の環境で作業します。

 

API をコードに変換する

Postmanは、JavaScript、ゴラン、Java、PHP、Pythonなど、すべての著名な言語でAPIリクエストをコードに変換することができます。

 

郵便配達人の利点

 

テストの自動化

Postmanでは、APIテストを自動化し、コレクションをCI/CDパイプラインと統合することができます。 単体テスト、統合テスト、回帰テスト、および模擬テストを自動化できます。

 

プラットフォームとOS対応

郵便配達人は、Mac、Windows、Linux、Chromeで利用可能であり、すべての主要なオペレーティングシステムをサポートしています。

 

郵便配達員テストレポート

要求ビルダーを使用してデータを追跡するのに役立つテスト レポートを提供し、テスト実行用の HTML レポートを生成できます。

 

統合

Postman はサポートを提供し、GitHub、Slack、Dropbox、GitLab などのすべての主要な開発者ツールと簡単に統合できます。

 

プライシング

郵便配達人のすべての主要な機能は費用の自由である。 上記の特典はすべて無料で利用できます。 また、中小企業向けの郵便配達人プロと郵便配達人エンタープライズの有料プランもあります。

 

郵便配達人の代替案

 

闊歩

スワッガーロゴ

 

 

 

Swagger はオープン ソース API 仕様で、REST API の WSDL に似ていますが、REST API の構造 (エンドポイント URL、入力/出力モデル、認証スキーマなど) を定義します。 仕様ファイルは JSON に基づいており、ファイル拡張子は JSON または YAML です。 スワッガーの主なハイライトのいくつかは次のとおりです。

  • オープンソースで無料ですが、問題のリソースを学んだり見つけたりするのは難しいかもしれません。
  • スワッガーは、ブラウザー内の API を表します。
  • サービスの構築からドキュメントを自動的に生成できます。

 

ソープイ

ソープUIロゴ

 

 

 

 

SoapUI を使用すると、ツールは API のテスト専用に作成されたツールであるため、REST API と SOAP API をすばやく簡単にテストできます。 SoapUI は、RESTful、SOAP、JSON、AMF などの複雑な ウェブ サービスの組み合わせをテストするのに役立ちます。 ただし、ウェブ サービスのテストには WSDL を使用する必要があります。 さらに、自動化には多くのスクリプトが必要であり、その経験を持っていないユーザーにとっては、困難で時間がかかる可能性があります。 SoapUI の主なハイライトの一部は次のとおりです。

  • ポイント アンド クリック機能は、JSON と XML の使いやすさを容易にするのに役立ちます。
  • Excel、ファイル、データベースなどからデータを読み込みます。
  • 機能テスト ケースをロード テストとして再利用します。
  • サードパーティの API 管理プラットフォームと統合し、REST、SOAP、JMS、IoT などをサポートします。

 

 

ポストマンコレクションテストをCI/CDパイプラインに統合

継続的インテグレーション (CI) は、開発者が定期的にコードを共有リポジトリにマージすることを要求する開発の実践です。 このプロセスでは、新しい変更がソース コードにコミットされるたびに、アプリケーションのビルドとテストを自動化します。 継続的な開発は、アプリケーションが特殊なサーバーで実行し、ユーザー要求を処理するユースケースを満たすために順番に実行する必要がある一連のステップとして説明できます。

 

LoadView を使用したポストマン コレクションのロード テスト

バックエンド アプリケーションをテストするたびに、機能のテストは、意図したとおりに動作することを確認するプロセスの標準的な部分です。 さて、それはすべて順調で良いですが、現実の世界のためではありません。 アプリケーションは、同時に数百人または数千人のユーザーが同時に利用されるため、パフォーマンス テストを実施して、そのトラフィックをどの程度保持しているかを確認する必要があります。 アプリケーションの変更ごとに、アプリケーションのベンチマークと検証を行う必要があります。 Postman の概要、その機能、および API 機能テストのテスト戦略の設定方法を見てきたように、アプリケーションのストレス テストに役立つツールを理解する必要があります。

Postman を使用して ウェブ API 機能をテストし、API 呼び出しコレクションからロード テストを生成する場合は、LoadView などの特殊なロード テスト ツールを選択できます。 LoadView は、API、ウェブ アプリケーション (外部および内部)、および ウェブ サイトとサーバーに対して、実際のブラウザーベースのロード テストを提供します。

 

テストのセットアップ

Postman コレクションの ウェブ アプリケーション ロード テストを設定する方法について、手順を追って説明します。

ロードビューポストマン API テスト: ステップ 1

始める前に、ポストマンコレクションをエクスポートする必要があります。 [パブリックを取得] リンクを選択して、LoadView に簡単にインポートできます (注意: 環境変数がコレクションに格納されていないので、Postman コレクションでローカル変数のみが使用されるようにしてください)。

郵便配達コレクション輸出

 

ロードビューポストマン API テスト: ステップ 2

LoadView プラットフォームを開き、[ 新しい ロード テストの作成] を選択します。

 

ロードビューポストマン API テスト: ステップ 3

ここでは、LoadView で利用できるさまざまなロード テストの種類を表示します – Web アプリ、Web サイト、および API。 このユースケースでは、POSTman コレクションオプションを選択して API テストを開始します。

ロード テストタイプ 郵便配達員

 

ロードビューポストマン API テスト: ステップ 4

新しいウィンドウが開き、エクスポートされた Postman コレクションをインポートして [デバイスの 作成] をクリックする必要があります。

郵便配達員コレクションリクエスト

 

ロードビューポストマン API テスト: ステップ 5

デバイスが正常に作成されると、[ テスト シナリオ ] 画面が表示され、テストの目的に応じて異なる 負荷の種類を設定できます。

  • 荷重ベース曲線: これは、既知の数のユーザーでロード テストを実行し、ウォームアップ時間を設定した後にトラフィックを増加させる方法です。
  • ゴールベース曲線. このテスト設定は、特定の API に対して 1 秒あたりのトランザクションを探していて、必要なレートにゆっくりと拡張する場合に使用されます。
  • ダイナミック ベースカーブ: このセットでは、動的な値をユーザー数、最大ユーザー数、テスト期間で選択し、テスト中にリアルタイムで変更できます。

 

郵便配達コレクションのロードタイプ

 

ロードビューポストマン API テスト: ステップ 6

すべての API のリストを含むテスト シナリオを作成したら、API の負荷テストとストレス テストを実行できるようになりました。 ロード テストの実行が正常に完了すると、API とシステムが負荷の下でどのように実行されたかを示す レポート、ダッシュボード、およびメトリック が提供されます。

 

 

ポストマン コレクション のロード テストと Jenkins の統合

LoadView を使用して Postman コレクションロードテストを統合して実行する方法を見てきたので、これらのテストを CI/CD の一部として追加して、定期的なフィードバックとパフォーマンス結果を得ることができます。 LoadView は Jenkins との統合も提供し、完全に管理されたクラウドから実際のブラウザーで同時接続を使用して、ストレス テスト Web サイト、Web アプリケーション、API をサポートします。 新しい更新プログラムや追加機能は、Jenkins の LoadView プラグインを使用してロード テストすることもできます。

LoadView で以前に作成した Postman コレクション テスト シナリオと Jenkins との統合に使用される手順を見てみましょう。

ステップ 1. テストを Jenkins と統合するには、上記で作成したのと同じ Postman テスト シナリオを使用します。

ステップ 2. 一意の UID を作成します。 これは Jenkins に統合するセキュリティ トークンとして使用されます。 統合 UID をコピーします。

ポストマン ジェンキンス統合 UID

 

ステップ 3. Postman コレクションのテスト シナリオ ID は、シナリオの設定ページまたはテスト 履歴 ページ (テスト マネージャー > のテスト アクション メニュー > 履歴) にあります。

郵便配達コレクションのテスト履歴

 

ジェンキンスのロードビュープラグイン

LoadView プラグインを設定するには、次の手順を実行します。

  1. Jenkins アカウントにログインします。
  2. Jenkins で、 資格情報の > 追加資格情報 > LoadView セキュリティ トークン (UID)に移動します。 資格情報を構成および検証します。
  • 種類. 読み込み表示セキュリティ トークン (UID)。
  • スコープ: [ グローバル ] を選択します。
  • ID. デフォルトのままにするか、一意の ID を指定します。
  • 説明: 資格情報を区別するための一意の説明を指定します。
  • UID. ロード ビュー アカウントからロード テスト Web API UID を貼り付けます。 UID が追加されたら 、[UID の検証 ] をクリックして、Jenkins が LoadView API にアクセスできることを確認します。
  1. 次に、ジョブを選択し、[ 構成] をクリックします。

ジェンキンス LoadView セキュリティ トークン

 

  1. > ビルド後のアクションのビルド ビルド アクション > の追加 ビルド後アクション > LoadView-Run ロード テスト シナリオに移動します。 ビルドの LoadView ストレス テスト設定を指定します。
  • 資格情報: 説明を使用して API キーを選択します。
  • シナリオ ID. ビルドで使用するテスト シナリオ ID を貼り付けます。 LoadView のシナリオ ページから ID をコピーします。
  • エラーしきい値: テスト中に発生したエラー (ターゲット・リソースへのアクセスに失敗した、キーワード/イメージが見つからないなど) を含むセッションの許容パーセンテージを指定します。 エラー セッションの割合が指定した値を超える場合、ビルドは Jenkins で失敗としてマークさます。
  • 平均時間: テスト実行中に測定される平均応答時間の制限を指定します。 制限に達すると、ビルドは Jenkins で失敗としてマークされます。
  1. [ 保存 ]をクリックします。

 

ロードビューのテスト結果の表示

最後に、LoadView をプラットフォームとして使用して、ポストマン コレクションを Jenkins と統合しました。 ストレス テストの実行中は、ステータスが Jenkins コンソール出力 にリアルタイム モードで表示されます。

郵便配達員ジェンキンスコンソール出力

 

ポストマン ジェンキンス ロードビュー テスト パフォーマンスの結果

 

郵便配達員コレクションテストのモニタリング

LoadViewは、ドットコムモニタプラットフォーム内の多くのソリューションの一部です。 ドットコムモニターはまた、私たちのポストマンコレクションのための簡単な監視ツールを提供しています。 Postman で内部 API テストに使用される統合テストのコレクションがあり、ローカル ネットワークの外部から実行するテストも設定する場合は、Postman テストを Dotcom-Monitor にアップロードできます。 Dotcom-Monitor Postman コレクションタスクを使用して、 エラーに関するアラートを含む自動監視テストを作成できます。 監視場所、 監視スケジューラ、フィルタを指定し 監視結果に基づいて レポート を設定できます。

追加された HTTP 要求のコレクションは、定義された頻度で繰り返し実行され、ターゲット Web API への呼び出しのシーケンスが実行されます。 これにより、Postman の要求に指定されたアサーションが提供され、API の応答の検証に役立ちます。 アサーションによって設定された条件が満たされない場合、タスクは失敗としてマークされます。

 

ポストマンを使用した API のロード テスト: 最終的な考え

開発コミュニティは、API のテストに関してさまざまな意見を持っています。 Postman は、このような簡単な API の作成、保守、およびテストに関して、どのように役立つかを見てきました。 また、LoadView を使用して、同時ユーザーのロード テスト Postman コレクションをシミュレートする方法のステップ バイ ステップ ガイドも見ました。 後で、LoadView と Jenkins の統合を使用して、この手順を自動化する方法を説明しました。 これらのアプリケーションにストレスを与えるために必要なツールは、最近簡素化されており、内部および外部のアプリケーションに依存する複雑なシステムをテストするのに非常に役立ちます。 ボトルネックや問題をより明確に見つけるのに役立ちます。

LoadView を使用して、API のロード テストを今すぐ開始します。 無料トライアルにサインアップ し、ロードテストクレジットで$ 20を受け取ります。 または、 当社のパフォーマンスエンジニアの1 人とプライベートデモの1つにサインアップしてください。 当社のエンジニアは、完全なLoadViewプラットフォームを通して、また、LoadViewをPostmanコレクションに統合し、ジェンキンスとの手順を自動化する方法を紹介します。