Postmanの入門から精通へ:Newmanを使った自動化テストの完全ガイド
この記事では、Newmanがコマンドライン実行を通じてPostmanスクリプトにどのように命を吹き込むか、その主要なコマンドとパラメータを詳しく説明し、APIテストを効率良く行う方法を解説します。
ソフトウェア開発の世界では、効率的なテストツールが重要です。ユーザーフレンドリーなグラフィカルインターフェイスを持つポストマンがAPIテストのための定番ツールとして広まる中、そのコマンドライン版であるNewmanは、さらに柔軟な自動化を提供します。この記事では、Newmanがコマンドライン実行を通じてPostmanスクリプトにどのように命を吹き込むか、その主要なコマンドとパラメータを詳しく説明し、APIテストを効率良く行う方法を解説します。

NewmanのAPIテストにおける役割の理解
Newmanは、基本的にはポストマンのコマンドラインコレクションランナーです。これにより、コマンドラインから直接コレクションを実行してテストすることができ、継続的インテグレーション(CI)や継続的デリバリー(CD)のパイプラインには欠かせないツールとなっています。Newmanを使用すれば、テスターや開発者はポストマンのGUIを使わずにWeb APIのテストを自動化でき、これらのテストをビルドシステムやバージョン管理リポジトリに統合することが可能です。

主要なコマンドとパラメーター
コレクションを実行するコマンド
Newmanを使ってポストマンのコレクションを実行するには、次の基本コマンドを使用します:
newman run [collection.json]
このコマンドは指定されたコレクションの実行を開始します。
よく使われるパラメーター
Newmanでは、以下のオプションを使ってコレクションの実行をさらに細かく設定できます:
-e, --environment <path>
:ポストマンの環境ファイルへのファイルパスを指定します。これにより、Newmanは指定されたファイルから環境変数を使用できます。-g, --globals <path>
:ポストマンのグローバル変数ファイルへのパスを示します、Newmanがグローバル変数にアクセスできるようにするためです。-d, --iteration-data <path>
:コレクションの実行に使用されるデータファイルを指し示します。データ駆動テストに便利です。-n, --iteration-count <number>
:コレクションが実行される回数を指定できます。-r, --reporters [names]
:テストレポートの出力形式を指定します(cli, html, json, junitなど)。例えば、--reporter-html-export
は出力をHTMLファイルに指示できます。
実践的な実装ガイド
ステップ1: ポストマンデータのエクスポート
1. コレクションのエクスポート:ポストマンでコレクションを右クリックし、「エクスポート」を選んでtestcase.json
として保存します。

2. 環境のエクスポート:ポストマンで使用する環境をenvironment.json
としてエクスポートします。

3. グローバル変数のエクスポート:同様に、グローバル変数をglobals.json
としてエクスポートします。

4. データファイルの準備:テストに外部データを使用する場合、これをdata.json
としてエクスポートします。
ステップ2: Newmanでのコレクション実行
エクスポートしたファイルを含むディレクトリに移動し、以下のコマンドを実行します:
newman run testcase.json -e environment.json -g globals.json -d data.json -r cli,html,json,junit --reporter-html-export report.html

大変申し訳ありません、回答がまた途中で切れてしまいました。続きはこちらです:

このコマンドを実行すると、指定された環境とデータファイルを使用してコレクションが実行され、定義されたテストが順番に実行され、選択した形式で詳細なテストレポートが生成されます。また、ローカルに保存されるレポートも含まれます。
結果の理解
Newmanによって生成されたレポートは、APIテストの性能について貴重な洞察を提供します:
- アサーション統計:アサーションの数とその合格/不合格ステータス。
- テストレポート時間:テストの実行にかかった総時間。
- レスポンススピード:レスポンスタイムの概観。
- 平均レスポンス時間:APIのパフォーマンスと健康状態を理解するのに役立ちます。

結論
Newmanは、特に連続的なテストが重要である開発ワークフローにぴったりと収まる強力な自動テストスイートにポストマンコレクションを変換します。Newmanのコマンドライン機能を活用することで、チームはAPIテストを効果的かつ効率的に実施することができ、ソフトウェアの品質を高めることが保証されます。Newmanを開発パイプラインに統合することは、テストの自動化にとどまらず、信頼性の高くスケーラブルでシームレスなテスト環境を確保することを意味します。