A comprehensive and visually appealing HTML report generator tailored for Playwright tests. Designed with powerful features and customizable options, Ortoni Report simplifies the process of reviewing and managing test results, making test reporting more intuitive and accessible.
Live Demo: Ortoni Report
- Sidebar Navigation: Enjoy a clean and structured layout for seamless navigation.
-
Sections:
- Dashboard: High-level overview of test analytics and trends.
- Tests: Dive into individual test details including logs, screenshots, and errors.
- Analytics: Track overall execution metrics, trends, and flaky/slow test insights.
- Hierarchical Grouping: Tests are organized by filename, suite, and project for better traceability.
- Test History View: Access up to 10 recent executions, categorized by suite and project.
- Configurable Integration: Easy setup with Playwright using TypeScript/JavaScript, along with customizable preferences.
- Advanced Filtering: Filter by project, tags, and status — with a reset option for full visibility.
- Comprehensive Test Data: Includes status, duration, tags, logs, errors, screenshots, videos, and trace viewer.
- Native Trace Viewer: Directly open the trace viewer within the reporter.
-
Test Analytics Dashboard 🌟 (New!)
- Summary of total test runs, passed/failed counts, pass rate, and average duration.
- Trends Over Time: Line chart showing test results across the last 30 runs.
- Top Flaky Tests: Identify unstable tests quickly.
- Slowest Tests: View tests with highest average durations.
-
Chart Visualizations:
- Pie or doughnut charts for test summary and per-project breakdowns (Improved!)
- Bar charts for project-specific comparisons.
- Line Chart for Trends: Visualize execution status progression over time.
-
Colorful UI: Redesigned with vibrant, high-contrast visuals for improved readability and engagement.
- Theme Support: Switch between light and dark themes for a comfortable viewing experience.
- Custom Branding: Add your company or project logo for a branded look.
- Flexible Attachments: Choose between Base64 or file path formats for media files.
- Custom Paths: Define report filenames and output folders as needed.
- Search & Reset: Quickly search by keyword or status, with easy reset controls.
- Skip Management: Skipped tests are hidden by default to declutter views.
- Self-Contained Reports: Easily share and review offline-friendly reports.
- Multi-Filters: Combine filters for targeted test analysis.
- Meta Information: Add custom user or environment metadata to reports.
- CLI: Open the reporter anytime using the builin CLI
Run the following command to install the ortoni-report package globally:
npm install -D ortoni-report
Set up Ortoni Report in your Playwright configuration file with the following example:
import { defineConfig } from "@playwright/test";
import { OrtoniReportConfig } from "ortoni-report";
const reportConfig: OrtoniReportConfig = {
open: process.env.CI ? "never" : "always", // default to never
folderPath: "report-db",
filename: "index.html",
logo:"logo.{png, jpg}",
title: "Ortoni Test Report",
showProject: !true,
projectName: "Ortoni-Report",
testType: "e2e",
authorName: "Koushik",
base64Image: false,
stdIO: false,
preferredTheme: "light",
chartType: "doughnut" | "pie";
meta: {
project: "Playwright",
version: "3.0.0",
description: "Playwright test report",
testCycle: "1",
release: "1.0.0",
platform: "Windows",
},
};
export default defineConfig({
reporter: [["ortoni-report", reportConfig]],
// Other Playwright configurations
});
import { defineConfig } from "@playwright/test";
const reportConfig = {
open: process.env.CI ? "never" : "always",
folderPath: "report-db",
filename: "index.html",
logo:"logo.{png, jpg}",
title: "Ortoni Test Report",
showProject: !true,
projectName: "Ortoni-Report",
testType: "e2e",
authorName: "Koushik",
base64Image: false,
stdIO: false,
preferredTheme: "light",
chartType: "doughnut" | "pie";
meta: {
project: "Playwright",
version: "3.0.0",
description: "Playwright test report",
testCycle: "1",
release: "1.0.0",
platform: "Windows",
},
};
export default defineConfig({
reporter: [["ortoni-report", reportConfig]],
// Other Playwright configurations
});
This command starts a local Express server and serves the generated Ortoni report. You can open the report in your default browser.
-
-d, --dir <path>
: Path to the folder containing the report. Defaults toortoni-report
. -
-f, --file <filename>
: Name of the report file. Defaults toortoni-report.html
. -
-p, --port <port>
: Port number for the local server. Defaults to2004
.
-
Default Usage
npx ortoni-report show-report
This will:
- Look for the report file
ortoni-report.html
in theortoni-report
folder. - Start the server on port
2004
.
- Look for the report file
-
Custom folder and file Options
npx ortoni-report show-report --dir custom-folder --file my-report.html --port 3000
This will:
- Look for the file
my-report.html
incustom-folder
. - Start the server on port
3000
.
- Look for the file
- If the specified file or folder does not exist, you will see an error like:
Ensure the file and folder paths are correct.Error: The file "my-report.html" does not exist in the folder "custom-folder".
Once the server is running, open your browser and navigate to:
http://localhost:<port>
Replace <port>
with the port number you specified or the default port (2004
). The report will automatically open in your default browser if the always
option is enabled.
Stay up-to-date with the latest features, improvements, and bug fixes by reviewing the Changelog.
This project is licensed under the terms of the LICENSE.
I encourage you to share feedback and contribute to improving Ortoni Report! For issues, suggestions, or contributions, please visit our GitHub repository.
If you'd like to support this project, you can donate via UPI:
Thank you for using Ortoni Report! I'm committed to providing you with a superior Playwright testing experience.
Developer & Designer Koushik Chatterjee
LetCode with Koushik