NewmanによるHTMLレポート出力

こんにちは!メディアフュージョンでテスターをしているタムです。Webサイトやアプリ、APIのテスト、SQLなどを担当しています。最近は自動テストに興味を持ち、JavaやPostman、Seleniumなどを勉強しています。これからこのブログで日々の学びを発信していきたいと思います。よろしくお願いします!
1.はじめに
前回の記事では、Newmanのインストール方法とPostmanからのJSONコレクション準備手順について学習しました。今回の記事では、API自動化プロセスにおける重要なステップであるNewmanによるHTMLレポートの出力方法について解説します。HTMLレポートを活用することで、テスト結果の全体概要を把握しやすくなり、各リクエストの成功・失敗状況を詳細に分析できるほか、レスポンス時間の傾向も確認できます。また、視覚的に分かりやすい形式でレポートを生成するため、チーム内での結果共有も容易になります。NewmanのHTMLレポート機能を利用することで、APIテストの効率化と結果の透明性向上が期待できます。
2. レポート出力用データの準備
レポートを出力する前に、以下の準備が必要です:
- JSONコレクションファイル
例:mydata.json

3.HTMLレポーターのインストール
npm install -g newman-reporter-htmlextra
補足:
htmlextra は現在最も見やすいレポーターで、グラフやサマリーテーブル、色分けなどを用いた視覚的にわかりやすいレポートを作成できます。

4. Newmanを使ってHTMLレポートを出力する
ステップ1: ターミナルまたはCMDを開く
JSONコレクションファイルが保存されているフォルダに移動します:
cd D:\Newman\HTML_Report

ステップ2: NewmanでHTMLレポーターを使って実行
コマンド構文:
newman run “mydata.json” -r htmlextra –reporter-htmlextra-export “report.html”
コマンドの説明:
- newman run “mydata.json” → mydata.json のAPIテストコレクションを実行します。
- -r htmlextra → 見やすく、グラフやサマリ付きのHTMLレポートを使用します。
- –reporter-htmlextra-export “report.html” → 実行結果を report.html というファイルに出力します。

5. HTMLレポートの確認
実行が完了したら、report.html ファイルをブラウザで開きます。
1️⃣ Summary(概要)
これはレポートの冒頭部分で、総リクエスト数、失敗したテスト数、スキップされたテスト数、実行回数(Iteration)がすぐに確認できます。
目的:ここを見ることで、テスト全体の状況が一目でわかります。例えば、「失敗したテストはあるか?」「リクエストは何件あるか?」といった情報をすぐ把握できます。

2️⃣ Iteration / Requests(イテレーション / リクエスト)
Iteration / Requests(イテレーション / リクエスト)では、Newman による API テスト実行結果をまとめて確認できます。Iteration はコレクション全体を 1 回実行した単位で、その中には実際に送られたすべての API リクエスト(GET / POST など)が表示されます。各リクエストを開くと、URL、HTTP メソッド、レスポンス時間、受信データサイズ、そしてテスト結果(緑 = Pass、赤 = Fail)を確認できます。特に Fail のリクエストは、レスポンス内容を見ることでどの API に問題が発生しているかをすぐに把握でき、デバッグの手がかりになります。



3️⃣ Response / Test Details(レスポンス / テスト詳細)
各リクエストを開くと、以下の3つのセクションがあります:
- Request Info(リクエスト情報)
送信されたURL、HTTPメソッド、ヘッダー情報を確認できます。
- Response Info / Body(レスポンス情報 / ボディ)
サーバーから返ってきたデータ、HTTPステータスコード、受信ヘッダーを確認できます。
- Test Info / Assertions(テスト情報 / アサーション)
各テストの合否(Pass/Fail)、実行時間、テストログの詳細を確認できます。
- 読み方のポイント:
レスポンス内容とテスト結果を見比べて、意図通りの動作になっているか確認しましょう。テスト失敗時は、ここで原因を特定できます。


読み方のポイント:
- テストがFailの場合
- どのテストが失敗したのか確認
- サーバーから返ってきたデータが正しいか
- レスポンス時間が長すぎないか
テストがPassの場合:APIが正常に動作していることを確認できます。
6. 結論
NewmanとHTMLレポーターを使うことで、PostmanからのAPIテストを自動化できます。
- 視覚的に分かりやすいレポートを生成でき、結果の確認が容易です。
- チームと共有したり、保存したりするのも簡単です。
- CI/CDと組み合わせることで、APIの安定稼働を継続的に保証できます
参考: https://qiita.com/moaikids/items/1e05ef2595504689fe3e
次回は、Java での API テストに非常に便利なライブラリ RestAssured を紹介します。RestAssured は、開発者やテスターが REST API のテストを書きやすくするために設計されたツールで、シンプルで読みやすく、保守もしやすいコードを書くことができます。通常であれば、自分でリクエスト送信やレスポンス処理のロジックを作る必要がありますが、RestAssured を使うと英語の文章に近い直感的な記述で、GET・POST・PUT・DELETE などの操作を簡単に表現できます。そのため、TestNG や JUnit と組み合わせて、多くの自動テストプロジェクトで広く利用されています。

