This article is part of the “Introduction to E2E Testing with Reqnroll × Playwright” series.
Reqnroll LivingDoc: Generate BDD Test Reports in .NET
If you want to turn your BDD tests into shareable documentation, Reqnroll LivingDoc is one of the best options. It lets you generate a single HTML report that combines test scenarios and execution results—making it ideal for teams.
This guide explains how to generate Living Documentation reports using Reqnroll in a .NET / Visual Studio environment.
reference:
https://github.com/ExpressiumOSS/Expressium.LivingDoc
What Is Reqnroll LivingDoc?
Reqnroll LivingDoc is a reporting approach that converts BDD test results into human-readable HTML documentation.
By using tools like Expressium LivingDoc, you can:
- Generate a single HTML report from test results
- View Feature / Scenario / Step execution
- Share reports easily with your team
- Combine specifications and results in one place
Unlike basic test reports, LivingDoc acts as executable documentation.
Key Features of LivingDoc
Unified Test Documentation
LivingDoc shows your BDD structure as-is:
- Features
- Scenarios
- Steps
This makes it easy to understand both the intent and the results of your tests.
Easy Sharing
The report is generated as a single HTML file, so you can:
- Upload it to a CI/CD pipeline
- Share it internally
- Attach it to test reports
Based on Cucumber Messages
Reqnroll outputs test results in Cucumber Messages format, which LivingDoc uses to build the report.
What the LivingDoc Report Includes
The generated HTML report typically contains:
- Feature list
- Scenario list
- Step execution results
- Pass / Fail status
- Execution time
The structure follows:
Feature → Scenario → Step
This mirrors your BDD test design, making it intuitive to navigate.
How to Generate a LivingDoc Report
Step 1: Install the NuGet Package
Add the following package to your Reqnroll test project:
- Expressium.LivingDoc.ReqnrollPlugin

This plugin exports test results in a format compatible with LivingDoc.
Step 2: Configure reqnroll.json
Create or update a reqnroll.json file in your project root:
{
"$schema": "https://schemas.reqnroll.net/reqnroll-config-latest.json",
"formatters": {
"expressium": {
"outputFilePath": "LivingDoc.ndjson",
"outputFileTitle": "Reqnroll Test Report"
}
}
}
Configuration Explanation
outputFilePath: Output file for test results (NDJSON format)outputFileTitle: Title of the generated report
Step 3: Run Tests
Execute your tests as usual:
dotnet test
After execution, the following files will be generated:
LivingDoc.ndjsonLivingDoc.html
Step 4: Open the HTML Report
Open LivingDoc.html in your browser to view the report.
You’ll see a structured view of your test execution results.
※The original article is in Japanese, so the images are in Japanese.

Adding Attachments (Optional)
You can also include attachments such as screenshots.
Create a helper extension:
using Reqnroll;
internal static class ReqnrollExtensions
{
internal static void AddAttachmentAsLink(
this IReqnrollOutputHelper outputHelper,
string path)
{
outputHelper.WriteLine($"[Attachment: {path}]");
}
}
This allows you to reference files (like screenshots) directly in the report.
Filtering Scenarios
LivingDoc supports filtering via URL parameters.
Example:
LivingDoc.html?filterByKeywords=TEST-123
This is useful when:
- Linking test cases to tickets
- Reviewing specific scenarios
- Debugging failures
Benefits of Using LivingDoc
Use Tests as Documentation
LivingDoc turns your BDD tests into readable specifications.
No need for separate documentation.
Improve Team Communication
Non-developers can easily understand:
- What is tested
- What passed or failed
Better Visibility in CI/CD
LivingDoc works well in:
- CI pipelines
- Automated test reports
- QA dashboards
Summary
Reqnroll LivingDoc is a powerful way to visualize BDD test results.
Key takeaways:
- Generates HTML reports from test execution
- Uses Cucumber Messages as input
- Easy setup via
reqnroll.json - Ideal for sharing and documentation
If you’re using Reqnroll for BDD testing, adding LivingDoc will help you turn tests into clear, maintainable, and shareable documentation.
