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 を使用する環境を提供するだけでなく、ブラウザーなどの Web ページを要求するためにも使用できます。 アドレス バーに URL を入力し、ヒット送信を HTML (ハイパーテキスト マークアップ言語) の応答を表示します。 Postman は、ユーザーが要求を送信する前、および応答を取得した後にスクリプトを追加する際にも役立ちます。 各要求をコレクションに格納でき、後ですべての要求を順番に実行できます。

しかし、Postmanがそうではないことの1つは、パフォーマンステストツールです。 API の応答時間を提供する、小さな制御されたテストを実行できますが、実際の条件下でテストを実行することと同じではありません。 API は実際のストレスの下に置かないので、実際のユーザーが関与している場合に API がどのように応答するかを示す良い指標ではありません。 そのためには、LoadView のようなソリューションが必要です。

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

API テストとは

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

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

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

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

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

郵便配達人の特徴

Postmanがユーザーに提供する機能の膨大な量に終わりはないようだ。 Postman API やワークフロー コントロールなどの機能から、回帰テスト用の組み込みモニターまで、このツールには API テストが含まれています。 ただし、高レベルでは、すべての API テスターが必要とするコア機能が少数あります。 これらの機能を詳しく見ていきましょう。

インポート要求

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

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

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

テスト ケースの書き込み

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

コレクション

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

JSON スキーマの検証

JSON (JavaScript オブジェクト表記法) スキーマを使用して、要求と応答の構造を定義できます。 JSON コンテンツのクリーンアップと構造化に役立ち、Postman で簡単に理解して読み取りできます。

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

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

API をコードに変換する

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

郵便配達人の利点

郵便配達人を定期的に使用する方は、以下のメリットに精通しています。 ただし、この API テスト ツールの機能と機能の完全な一覧ではありません。 郵便配達人の主な利点のいくつかを見てみましょう。

API テストの自動化

これは、郵便配達人の最初で最も明白な利点です。 このツールを使用すると、API テストを自動化し、コレクションを CI/CD パイプラインと統合できます。 また、前述したように、API テストでは、開発者が使用するアプリケーション フレームワークやプロトコルに依存しない JSON 形式または XML 形式が使用されます。 どんなフレームワークを使っても(Python、JavaScript、ルビーなど)、郵便配達人はそれをサポートします。 単体テスト、統合テスト、回帰テスト、および模擬テストを自動化できます。

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

郵便配達人は、Mac OS X、Windows、およびLinuxで利用可能です。 ポストマンウェブアプリも利用可能で、クロム、Firefox、エッジ、サファリ用に最適化されています。

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

要求ビルダーを使用してデータを追跡するのに役立つテスト レポートが提供され、テスト実行用の 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 などの複雑な Web サービスの組み合わせをテストするのに役立ちます。 ただし、Web サービスのテストには WSDL を使用する必要があります。 さらに、自動化には多くのスクリプトが必要であり、その経験を持っていないユーザーにとっては、困難で時間がかかる可能性があります。 SoapUI の主なハイライトの一部は次のとおりです。

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

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

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

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

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

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

テストのセットアップ

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

ロードビューポストマン 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 とシステムが負荷の下でどのように実行されたかを示す レポート、ダッシュボード、およびメトリック が提供されます。

ジェンキンスとの郵便配達員コレクションロードテストの統合

LoadView を使用して Postman コレクションロードテストを統合して実行する方法を見てきたので、これらのテストを CI/CD の一部として追加して、定期的なフィードバックとパフォーマンス結果を得ることができます。 LoadView は Jenkins との統合も提供し、完全に管理されたクラウドから実際のブラウザーで同時接続を行う 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. LoadView アカウントからロード テスト ウェブ 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コレクションに統合し、ジェンキンスとの手順を自動化する方法を紹介します。