pytest plugin for generating HTML reports
Project description
pytest-html is a plugin for pytest that generates a HTML report for the test results.
Requirements
You will need the following prerequisites in order to use pytest-html:
Python 2.6, 2.7, 3.3, 3.4, 3.5, PyPy, or PyPy3
pytest 2.7 or newer
Installation
To install pytest-html:
$ pip install pytest-html
Then run your tests with:
$ pytest --html=report.html
Creating a self-contained report
In order to respect the Content Security Policy (CSP), several assets such as CSS and images are stored separately by default. You can alternatively create a self-contained report, which can be more convenient when sharing your results. This can be done in the following way:
$ pytest --html=report.html --self-contained-html
Enhancing reports
You can add change the Environment section of the report by modifying request.config._html.environment from a fixture:
@pytest.fixture(autouse=True)
def _environment(request):
request.config._environment.append(('foo', 'bar'))
You can add details to the HTML reports by creating an ‘extra’ list on the
report object. The following example adds the various types of extras using a
pytest_runtest_makereport
hook, which can be implemented in a plugin or
conftest.py file:
import pytest
@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
pytest_html = item.config.pluginmanager.getplugin('html')
outcome = yield
report = outcome.get_result()
extra = getattr(report, 'extra', [])
if report.when == 'call':
# always add url to report
extra.append(pytest_html.extras.url('http://www.example.com/'))
xfail = hasattr(report, 'wasxfail')
if (report.skipped and xfail) or (report.failed and not xfail):
# only add additional html on failure
extra.append(pytest_html.extras.html('<div>Additional HTML</div>'))
report.extra = extra
Screenshots
Resources
Project details
Release history Release notifications | RSS feed
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
Hashes for pytest_html-1.11.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c84f283b5d73ac64592b214b75dde057bcc012fac90583b133a29571888d819 |
|
MD5 | ccc8158700760430b313d0bfbcce9677 |
|
BLAKE2b-256 | 52b879e33c6dd82d641df2a738c995fe5c1c6ea87b24609f3ab9f93327c27a71 |