PostmanのNewman拡張機能を使用してDockerでAPIテストとデバッグを自動化する

この投稿は、 Postmanの開発者関係責任者であるJoyce Linによって共同執筆されました。

Docker Automate API テストとデバッグを Postman インライン v1b で Docker で

2,000万人以上の開発者がPostman APIプラットフォームを使用しており、そのコレクション機能はコミュニティ内で際立っています。 基本的に、コレクションは API 呼び出しのグループです。 

すべてのコレクションがより複雑なものに進化するわけではありませんが、多くはPostmanのより高度な機能の基本的な構成要素です。 たとえば、コレクションには API テストとドキュメントを含めたり、モック サーバーに通知したり、一連の API 呼び出しを表すことができます。

Postman コレクション テスト
ポストマンアプリ内の API テストを含むポストマンコレクションの例。

API 要求をコレクションに格納すると、ユーザーは自分の作業を探索、実行し、他のユーザーと共有できます。 なぜそれが重要なのか、そして PostmanのNewman Docker拡張機能を使い始める方法について説明します。

なぜDockerデスクトップで郵便配達員コレクションを実行するのですか?

Newman Run ダッシュボード
Docker デスクトップの Newman 拡張機能には、コレクションの実行結果が表示されます。

コレクションは一連の API 呼び出しであるため、考えられる任意の API ワークフローを表すことができます。 たとえば、開発中にコレクションを実行するためのユース ケースを次に示します。 

  • 自動化 – APIテストを自動化してローカルでテストを実行
  • ステータスチェック – コレクションを実行して、API の現在のステータスと正常性を評価します
  • デバッグ – テスト結果をログに記録し、テストの失敗でフィルター処理して、予期しない API 動作をデバッグします
  • 実行 – コレクションを実行して、さまざまな環境構成に対して API ワークフローを実行します

ユース ケースごとに、さまざまなシナリオでコレクションを実行することができます。 API テストの自動化に関連するいくつかのシナリオを次に示します。 

  • 開発中のローカルでのテスト
  • CI/CD パイプラインの一部としてのテスト
  • イベントトリガーに基づくテスト
  • 所定のスケジュールでのヘルスチェック

また、コレクションはいくつかの方法で実行できます。 1つの方法は、 Postman のオープンソースライブラリであるNewmanをDockerで活用する方法です。 Newman は、コマンドラインから使用することも、関数、スクリプト、およびコンテナ化されたアプリケーションと共に使用することもできます。 Dockerデスクトップからコレクションを実行することもできます!

Docker Desktop での Newman の使用を開始する

Postman Docker 拡張機能は、 Postman の Newman イメージ を使用してコレクションを実行し、結果を表示します。 このセクションでは、拡張機能を試乗し、最初のコレクションを実行します。

セットアップ

  1. 最新バージョンの Docker デスクトップをインストールします。 Docker Desktop 用の Newman 拡張機能 をインストールします。
  2. 無料のPostmanアカウントにサインアップ、APIキーを生成します。これにより、コレクションや環境などのPostmanデータにアクセスできるようになります。
  3. Postmanアカウントにログインして、Postmanコレクションを作成します。 Postman コレクションがまだない場合は、 このサンプル コレクション を独自のワークスペースにフォークできます。 その後、このフォークされたコレクションは独自のコレクションとして表示されます。

郵便配達員コレクションの実行

  1. 郵便配達員APIキーを入力し、「郵便配達員コレクションを取得」をクリックします。
Postman API キー

2. 実行するコレクションを選択します。

3. (オプション) コレクションと一緒に実行する環境を選択します。 Postman 環境では、各サーバー環境に対応する異なるサーバー構成と資格情報を定義できます。

4. [コレクションの実行] をクリックし、API 呼び出しの結果を確認します。 失敗したテストでフィルター処理し、詳細にドリルダウンできます。 すべての仕組みを段階的に説明します。

5. 必要に応じて、他のコレクションや環境でこのプロセスを繰り返します。

この拡張機能に貢献するか、独自の拡張機能を作成します

この拡張機能はオープンソースの コミュニティプロジェクトですので、自由にアイデアを投稿してください。 または、フォークして自分のものにすることもできます。 ニューマンに試してみよう Docker Hub にアクセスし、Docker Desktop 内で拡張機能を開く。 Newman は Docker Desktop の Extensions Marketplace に直接インストールすることもできます。 

さらに実験してみませんか? 独自のアイデアは、 拡張機能 SDK GitHub ページから実現できます。 ここでは、次のプロジェクトを開始するのに役立つコードサンプルを見つけることができます。 

次のようなオープンソースプロジェクトをサポートしてくれたジョイスからPostmanに特に感謝します ニューマン, コミュニティが統合を構築できるようにし、ソフトウェア開発エンジニア・イン・テスト(SDET)のダニー・デイントンに 彼のUI作業 コレクション実行結果の周り。