Skip to main content

Generate a modern, interactive HTML report from Robot Framework output.xml

Project description

Robotframework ReportLens

ReportLens turns Robot Framework XML output (output.xml) into a single, self-contained HTML report with a modern, interactive UI.

Sample Report

View generated reports here

Installation

pip install robotframework-reportlens

Requires Python 3.7+. No extra dependencies (stdlib only).

Usage

After running Robot Framework tests (e.g. robot test/), generate a report from output.xml:

reportlens output.xml -o report.html

Arguments:

  • xml_file – Path to Robot Framework XML output (e.g. output.xml)
  • -o, --output – Output HTML path (default: report.html)

Examples:

# Default output (report.html in current directory)
reportlens output.xml

# Custom output path
reportlens output.xml -o docs/report.html

Open the generated .html file in a browser.

You can also run the module directly:

python -m robotframework_reportlens output.xml -o report.html

Features

  • Suite/test tree – Navigate suites and tests with pass/fail/skip counts
  • Search & filters – Filter by status and tags; search test names
  • Keyword tree – Expand SETUP, keywords, and TEARDOWN; select a keyword to see its logs
  • Logs panel – Log level filter (All, ERROR, WARN, INFO, etc.); copy button on each log message (shown on hover)
  • Failed-tests summary – Quick access to failed tests from the sidebar
  • Dark/light theme – Toggle in the report header
  • Fixed layout – Same layout on all screens; zoom and scroll as needed

How it works

ReportLens reads output.xml, parses suites, tests, keywords, and messages, then builds one HTML file from a bundled template. The report is data-driven: all content is embedded as JSON and rendered by JavaScript in the browser. No server required.

Development / source layout

├── robotframework_reportlens/
│   ├── __init__.py
│   ├── cli.py           # reportlens entry point
│   ├── generator.py     # XML → report data → HTML
│   └── template/
│       └── template.html
├── tests/
│   ├── conftest.py      # pytest fixtures
│   ├── test_cli.py      # CLI tests
│   ├── test_generator.py # report generator tests
│   └── fixtures/        # minimal Robot output.xml for tests
├── pyproject.toml
└── README.md

Running tests

Install with dev dependencies and run pytest:

pip install -e ".[dev]"
pytest tests/ -v

License

Apache License 2.0 - See LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robotframework_reportlens-0.1.0.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robotframework_reportlens-0.1.0-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

Details for the file robotframework_reportlens-0.1.0.tar.gz.

File metadata

File hashes

Hashes for robotframework_reportlens-0.1.0.tar.gz
Algorithm Hash digest
SHA256 33f58328e5293b10a9b1ebb3a14a2c31dcc5201351d71e111781e5669a52dff2
MD5 713e80be212df2deef36bce3ee2a5214
BLAKE2b-256 167cb4b7883d25b0d130a8fd113ea477f20edcafcbfd6376338d21265ac7e1a2

See more details on using hashes here.

File details

Details for the file robotframework_reportlens-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for robotframework_reportlens-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 330b2c711c54647c7c3877af8c5cd7fe2daf8f07df70602ddb3e3e0cff76e826
MD5 3f900646868d773ae376a2859b122008
BLAKE2b-256 06f8726f76ed7a19b11d0b9f8f4e3fbebf0ce102bef969f83511eb91e5c1bf58

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page