この記事は「Reqnroll × Playwrightで始めるE2Eテスト入門」シリーズの一部です。
【Reqnroll】テスト結果をHTMLレポートに出力する方法(Formattersの使い方)
.NETのBDDテストフレームワーク Reqnroll を使用していると、次のように思うことがあります。
- テスト結果をレポートとして残したい
- Feature / Scenario の実行結果をまとめたい
- チームで共有できるテスト報告書を作りたい
Reqnrollでは Formatters機能を使うことで、テスト結果を HTMLレポートとして出力できます。
この記事では、Reqnrollの Formatters機能を使ってテスト結果レポートを作成する方法を解説します。
この記事でわかること
- Reqnroll Formattersとは何か
- HTMLレポートを生成する方法
- reqnroll.jsonの設定方法
- 出力されるレポート内容
Reqnroll Formattersとは
Reqnroll Formattersとは、テスト実行結果を特定の形式で出力する機能です。
例えば次のような形式で結果を出力できます。
- HTMLレポート
- Messages形式(Cucumber Messages)
これにより、FeatureやScenarioの実行結果を レポートとして保存できます。
Formattersは Reqnroll v3以降で追加された機能です。
Reqnrollで利用できるFormatter
Reqnrollには主に次のFormatterがあります。
| Formatter | 内容 |
|---|---|
| HTML Formatter | HTML形式のテストレポート |
| Messages Formatter | Cucumber Messages形式 |
多くの場合、HTML Formatterを使うことでテスト結果を確認できます。
HTMLレポートを出力する方法
HTMLレポートを生成するには、reqnroll.jsonに設定を追加します。
reqnroll.jsonを設定する
プロジェクトの直下に reqnroll.json を作成して以下を追加します。
{
"$schema": "https://schemas.reqnroll.net/reqnroll-config-latest.json",
"formatters": {
"html": {
"outputFilePath": "reqnroll-report.html"
}
}
}
この設定により、テスト実行時に HTMLレポートが生成されます。
テストを実行する
テストは通常通り実行します。
dotnet test
テスト実行後、次のような場所にレポートが生成されます。
bin/Debug/net8.0/reqnroll-report.html
生成されたHTMLファイルをブラウザで開くと、テスト結果を確認できます。
HTMLレポートの内容
HTMLレポートには次のような情報が表示されます。
表示される内容
- Feature
- Scenario
- Step
- テスト成功 / 失敗
- 実行時間
例
Feature
Feature: サンプルテスト サンプルのテスト @mytag Scenario: テストシナリオ Given サイトを開く
このように BDDのテスト結果を一覧形式で確認できます。

HTMLレポートの結果

Messages Formatterとは
Messages Formatterは Cucumber Messages形式でテスト結果を出力する機能です。
設定例
{
"formatters": {
"messages": {
"outputFilePath": "reqnroll-report.ndjson"
}
}
}
この形式は次のようなツールと連携する際に使用します。
- Allure Report
- ReportPortal
これらのツールを使用すると、より高度なテストレポートを作成できます。
Reqnroll Formattersを使うメリット
Reqnroll Formattersを使うメリットは次の通りです。
- テスト結果を共有できる
- HTML形式でレポートを保存できる
- Feature / Scenario単位で結果を確認できる
特に BDDテストではScenario単位の結果が重要なので、レポートとして残す価値があります。
まとめ
Reqnrollでは Formatters機能を使うことで、テスト結果をレポートとして出力できます。
ポイントをまとめます。
- Reqnroll v3以降でFormattersが利用可能
- HTML Formatterでレポート生成
- reqnroll.jsonに設定を追加するだけ
- dotnet test実行時に自動生成
BDDテストを実施している場合は、テスト結果をレポートとして保存しておくと便利です。
Reqnrollを使ったテストを行っている場合は、ぜひ Formattersを活用してテスト結果を可視化してみてください。
