# Allure Report — Flexible Multi-Language Test Reporting Framework > Flexible, lightweight test reporting tool that generates clear graphical reports from test results across multiple languages and frameworks. ## Install Save in your project root: # Allure Report — Flexible Multi-Language Test Reporting Framework ## Quick Use ```bash # Install via Homebrew brew install allure # Install via npm npm install -g allure-commandline # Generate and open a report from test results allure generate ./allure-results -o ./allure-report --clean allure open ./allure-report ``` ## Introduction Allure Report transforms raw test result data into interactive, visually rich HTML reports that show pass/fail status, failure details, execution timelines, and trend history. It supports adapters for virtually every major test framework across Java, Python, JavaScript, C#, Ruby, and more. By separating test execution from reporting, Allure lets teams standardize on one report format regardless of which test runner each project uses. ## What Allure Does - Generates interactive HTML reports from test result files in a standard JSON format - Provides adapters for JUnit, pytest, Mocha, Jest, Cypress, Playwright, TestNG, and 30+ frameworks - Shows test execution timelines, retries, flaky test detection, and historical trends - Supports attaching screenshots, logs, and custom data to individual test cases - Categorizes failures by defect type, severity, and custom labels ## Architecture Overview Allure uses a two-phase model: adapters and the report generator. During test execution, a language-specific adapter (e.g., allure-pytest, allure-mocha) writes structured JSON result files to an output directory. After tests complete, the Allure CLI reads those files and generates a static HTML report with embedded JavaScript for interactive navigation. The report includes graphs, timelines, and drill-down views. Historical data is preserved across runs by copying a `history/` folder between generations, enabling trend charts. ## Self-Hosting & Configuration - Install the CLI via Homebrew, npm, or download from GitHub Releases - Add the appropriate adapter to your test project (e.g., `pip install allure-pytest`) - Configure your test runner to output results to an `allure-results` directory - Generate reports with `allure generate ./allure-results -o ./allure-report` - Serve reports locally with `allure open` or deploy the static HTML to any web server ## Key Features - Adapters for 30+ test frameworks across Java, Python, JS, C#, Ruby, PHP, and Go - Interactive HTML reports with graphs, timelines, and drill-down test details - Flaky test detection and retry tracking across multiple executions - Attachment support for screenshots, videos, logs, and arbitrary files - Historical trend charts when preserving the history directory between runs ## Comparison with Similar Tools - **JUnit XML reports** — plain XML without visualization; Allure adds rich interactive HTML - **Mochawesome** — Mocha-specific HTML reporter; Allure works across all languages and frameworks - **ReportPortal** — full SaaS/self-hosted test management platform; Allure is a lightweight static report generator - **pytest-html** — Python-only single-page report; Allure offers deeper drill-downs and cross-framework consistency - **Cucumber Reports** — BDD-focused; Allure handles both BDD and traditional test styles with the same interface ## FAQ **Q: How do I keep historical trends across CI runs?** A: Copy the `allure-report/history` directory into `allure-results/history` before generating the next report. Most CI plugins handle this automatically. **Q: Can I attach screenshots to failed tests?** A: Yes. Use the adapter's attachment API (e.g., `allure.attach(screenshot_bytes, name='screenshot', attachment_type=AttachmentType.PNG)`) in your test hooks. **Q: Does Allure work with Playwright?** A: Yes. Install `allure-playwright` and configure Playwright to use the Allure reporter. Screenshots and traces attach automatically on failure. **Q: Is Allure Report free?** A: Yes. Allure Report (the CLI and framework adapters) is fully open source under Apache 2.0. Allure TestOps is the commercial product for team-scale test management. ## Sources - https://github.com/allure-framework/allure2 - https://allurereport.org/docs/ --- Source: https://tokrepo.com/en/workflows/bdba60ec-41af-11f1-9bc6-00163e2b0d79 Author: AI Open Source