pytest-recap Test Report
Summary
{{ total }} tests ran in {{ human_duration }}
{% for outcome, color in outcome_color_map.items() %}
{% if outcome_counts.get(outcome, 0) > 0 %}
- {{ outcome.title() }}: {{ outcome_counts[outcome] }} ({{ outcome_percentages[outcome] }}%)
{% endif %}
{% endfor %}
Session Metadata
- Session start: {{ session.get("session_start_time", "N/A") }}
- Session stop: {{ session.get("session_stop_time", "N/A") }}
- Duration: {{ human_duration }}
- System Under Test: {{ system_under_test.get("name", "N/A") }}
- Host: {{ testing_system.get("hostname", "N/A") }}
- Platform: {{ testing_system.get("platform", "N/A") }}
- Python: {{ testing_system.python_version }}
- Pytest: {{ testing_system.pytest_version }}
- Environment: {{ testing_system.environment }}
{% if generated_at %}
- HTML File Generated: {{ generated_at }}
{% endif %}
Warnings ({{ warnings | length }})
{% if warnings %}
Test Node Id |
When |
Category |
Filename |
Line |
Message |
{% for w in warnings %}
{{ w.nodeid or 'N/A' }} |
{{ w.when or 'N/A' }} |
{{ w.category or 'N/A' }} |
{{ w.filename or 'N/A' }} |
{{ w.lineno if w.lineno is not none else 'N/A' }} |
{{ w.message or 'N/A' }} |
{% endfor %}
{% else %}No warnings.
{% endif %}
Errors ({{ errors | length }})
{% if errors %}
Test Node Id |
When |
Outcome |
Message |
{% for e in errors %}
{{ e.nodeid or 'N/A' }} |
{{ e.when or 'N/A' }} |
{{ e.outcome or 'N/A' }} |
{{ e.message or e.longrepr or e.longreprtext or '(no message)' }} |
{% endfor %}
{% else %}No errors.
{% endif %}
Rerun Test Groups ({{ rerun_test_groups | length }})
{% if rerun_test_groups %}
Test Node ID |
# |
Duration (s) |
Start Time |
Stop Time |
Outcome |
{% for group in rerun_test_groups %}
{% for test in group.tests %}
{{ test.nodeid }} |
{{ loop.index }} |
{{ test.duration or 'N/A' }} |
{{ test.start_time or 'N/A' }} |
{{ test.stop_time or 'N/A' }} |
{{ test.outcome.value }} |
{% endfor %}
{% endfor %}
{% else %}
No rerun test groups.
{% endif %}
Test Results
Filter by outcome:
{% set outcomes = [
('passed', 'Passed'),
('failed', 'Failed'),
('skipped', 'Skipped'),
('error', 'Error'),
('xfailed', 'XFailed'),
('xpassed', 'XPassed'),
('rerun', 'Rerun'),
('unknown', 'Unknown')
] %}
{% for key, label in outcomes %}
{% endfor %}
Test | Outcome | Duration | Start | Stop |
{% for test in test_results %}
{% if session_idx is defined %}
{% set row_id = "details-" ~ (session_idx|string) ~ '-' ~ loop.index0 %}
{{ test.nodeid }} |
{% else %}
{% set row_id = "details-" ~ loop.index0 %}
{{ test.nodeid }} |
{% endif %}
{{ test.outcome }} |
{{ test.human_duration }} |
{{ test.start_time }} |
{{ test.stop_time }} |
Captured stdout:{{ test.capstdout or "(none)" }}
Captured stderr:{{ test.capstderr or "(none)" }}
Captured log:{{ test.caplog or "(none)" }}
Error/Traceback:{{ test.longreprtext or "(none)" }}
|
{% endfor %}