Parse Allure BDD HTML test reports into Excel/HTML summaries and email them.
Project description
allure-report-mailer
Parse Allure BDD HTML test reports into Excel/HTML summaries and email them.
Three stages, each usable independently or chained via a pipeline command:
- parse — reads Allure HTML report artifacts (
widgets/summary.json,widgets/environment.json,data/test-cases/*.jsonembedded in each report), aggregates by (ID, FileName), dedupes to one row per test ID keeping the most recent run, and writestest_runtime_data.xlsx+test_env.json. - render — renders
test_runtime_data.xlsxinto a standalone, timestamped HTML report with client-side filter/sort, a color palette, and a configurable title. - email — finds the most recently generated HTML report and emails a compact, Outlook-safe
summary (stats table + environment table) via SMTP, with the full report attached as a
.zip.
Install
pip install allure-report-mailer
Usage
# Run all three stages in sequence
allure-report-mailer pipeline /path/to/allure/artifacts --output-dir ./out
# Or run each stage independently
allure-report-mailer parse /path/to/allure/artifacts --output-dir ./out
allure-report-mailer render ./out/test_runtime_data.xlsx ./out --report-title "My Regression Report"
allure-report-mailer email --report-dir ./out
Run allure-report-mailer --help, or allure-report-mailer <subcommand> --help for full option lists.
Email configuration
Secrets are read only from environment variables (never CLI flags, never hardcoded):
| Variable | Required | Default |
|---|---|---|
EMAIL_USER / EMAIL_PASS |
Yes | none |
EMAIL_FROM |
No | falls back to EMAIL_USER |
EMAIL_TO |
Yes | none (comma-separated) |
EMAIL_CC |
No | none (comma-separated) |
SMTP_HOST |
No | smtp.azurecomm.net |
SMTP_PORT |
No | 587 |
REPORT_DIR |
No | current directory |
The email's title, subject template, greeting/intro/closing copy, and environment-field labels can be
overridden without touching source via --email-config path/to/config.json:
{
"report_title": "Weekly Regression Report",
"subject_template": "{report_title} - {date}",
"email_body": {
"greeting": "Hi Team,",
"intro": "Please find below the test execution summary for the week of {date}."
}
}
Only the keys you want to override need to be present — everything else falls back to the built-in
defaults (see allure_report_mailer/config.py).
Development
pip install -e ".[dev]"
pytest --cov=allure_report_mailer --cov-report=term-missing
See SETUP.md for build/release steps.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file allure_report_mailer-0.1.0.tar.gz.
File metadata
- Download URL: allure_report_mailer-0.1.0.tar.gz
- Upload date:
- Size: 40.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c8f2cbd318fa88d9e2d5c99e2fdeee09b0646b216c2fa90f54cdf61ee68c010
|
|
| MD5 |
f5410bdb3a159c2601d04780bd2c395c
|
|
| BLAKE2b-256 |
c2fd873d331f467d4e85b470e363b385fbff446de3ddc14c4dcaa0da16d792fb
|
File details
Details for the file allure_report_mailer-0.1.0-py3-none-any.whl.
File metadata
- Download URL: allure_report_mailer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a382b92cb01bf6c5e71a63442ead222ef02fd3236d29bb87b94becfe2c46de9
|
|
| MD5 |
e2e5f2eff53d30590ffaefe0b3ccd485
|
|
| BLAKE2b-256 |
b165adb25d78dd107ecd99115f943f478a73769d92136b6a70d6ba6b8866b01a
|