PyReport is a lightweight reporting plugin for Pytest that provides concise HTML report
Project description
PyReport
Quick overview
PyReport is a lightweight reporting plugin for Pytest that provides concise HTML reports by parsing JunitXML test results
Pre-requisites
To be able to use this plugin you will need below dependencies that will be installed automatically with PyReport:
- Python >=3.7
- Jinja2
- Pytest
- matplotlib
- requests
- logstyle
Supported Messengers
- Telegram
- Slack
Getting started
Installation
To start using PyReport please follow below instructions:
- Install
pytest-pyreportplugin:
pip install pytest-pyreport==<version>
Report generation
- Run tests using below command to generate pyreport.html file with test results:
pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport
- Run tests using below command if you want to send Telegram notification
pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport --telegram-pyreport <chat id> <bot token>- Prerequisites:
- You need your own Telegram bot, which can be easily created using Telegram instructions. You can take the “chat ID” and “bot token” from there.
- Prerequisites:
- Run tests using below command if you want to send Slack notification
pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport --slack-pyreport <webhook url> <channel id> <bot token>- Prerequisites:
- You need your own Slack bot, which can be easily created using Slack instructions. You can take the “webhook url”, "channel id" and “bot token” from there.
- Prerequisites:
- Run tests using below command if you want to check generated report on the server if it is available:
pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport --telegram-pyreport <chat id> <bot token> --server <URL> pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport --slack-pyreport <webhook url> <channel id> <bot token> --server <URL>- Prerequisites:
- You need to run server beforehand. As an example using CI/CD tools like Jenkins or GitHub Actions
- Prerequisites:
- Run tests with failed tests counter. By running below command you will get JSON file with percentage of failed tests:
pytest --junitxml=result.xml -o junit_family="xunit1" --pyreport --failed-tests-count- Fail percentage formula:
Failed Tests Percentage = (Number of Failed Tests / Total Number of Tests) * 100 = (10 / 100) * 100 = 10%- Example
fail_percentage.json:
{"fail_count": 10, "fail_percentage": 10.0}
Test results
- Once test run completed you should see
pyreport.htmlfile that auto generated by using above commands.
Open it and check the test results as shown in below presentation
Presentation
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
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 pytest_pyreport-1.6.0.tar.gz.
File metadata
- Download URL: pytest_pyreport-1.6.0.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fed4bb9af9ea3838a9b83f549fddd740fd06f9822050d9739b05acc68289e615
|
|
| MD5 |
de4873fb5b72d4e58d01bd8bf8e7c482
|
|
| BLAKE2b-256 |
69b17a5072f06bf19cfdf98e58b3228630cdf8759baaacef710ac7e67eedbe57
|
File details
Details for the file pytest_pyreport-1.6.0-py3-none-any.whl.
File metadata
- Download URL: pytest_pyreport-1.6.0-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81cb2980e9ab7b7f8a18822282cb5f34e6b1f6e939cde459c6d07ea568c9e6db
|
|
| MD5 |
b29291204857f2c09632f94f8c1699a3
|
|
| BLAKE2b-256 |
a7127c6659ef6586bf8abb14632fcd527cb854b4147d96f11bc1b8e3ad1df152
|