A pytest plugin to notify test results to a Discord channel.
Project description
.. contents:: **pytest-discord**
:backlinks: top
:depth: 2
Summary
============================================
|PyPI pkg ver| |Supported Python ver| |Supported Python impl| |CI status| |Test coverage| |CodeQL|
.. |PyPI pkg ver| image:: https://badge.fury.io/py/pytest-discord.svg
:target: https://badge.fury.io/py/pytest-discord
:alt: PyPI package version
.. |Supported Python impl| image:: https://img.shields.io/pypi/implementation/pytest-discord.svg
:target: https://pypi.org/project/pytest-discord
:alt: Supported Python implementations
.. |Supported Python ver| image:: https://img.shields.io/pypi/pyversions/pytest-discord.svg
:target: https://pypi.org/project/pytest-discord
:alt: Supported Python versions
.. |CI status| image:: https://github.com/thombashi/pytest-discord/actions/workflows/ci.yml/badge.svg
:target: https://github.com/thombashi/pytest-discord/actions/workflows/ci.yml
:alt: CI status of Linux/macOS/Windows
.. |Test coverage| image:: https://coveralls.io/repos/github/thombashi/pytest-discord/badge.svg?branch=master
:target: https://coveralls.io/github/thombashi/pytest-discord?branch=master
:alt: Test coverage: coveralls
.. |CodeQL| image:: https://github.com/thombashi/pytest-discord/actions/workflows/github-code-scanning/codeql/badge.svg
:target: https://github.com/thombashi/pytest-discord/actions/workflows/github-code-scanning/codeql
:alt: CodeQL
A pytest plugin to notify test results to a Discord channel.
Installation
============================================
::
pip install pytest-discord
Quick start
============================================
Making a Discord webhook
--------------------------------------------
`Intro to Webhooks – Discord <https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks>`__
Usage
--------------------------------------------
Set a webhook URL when executing ``pytest`` via ``--discord-webhook`` option:
::
$ pytest --discord-webhook=<https://discordapp.com/api/webhooks/...>
.. figure:: https://cdn.jsdelivr.net/gh/thombashi/pytest-discord@master/ss/pytest-discord.png
:scale: 80%
:alt: https://github.com/thombashi/pytest-discord/blob/master/ss/pytest-discord.png
Notification message example
Or, set a webhook URL to an environment variable ``PYTEST_DISCORD_WEBHOOK``:
::
$ export PYTEST_DISCORD_WEBHOOK=<https://discordapp.com/api/webhooks/...>
$ pytest
Or, you can specify a webhook URL of a discord channel via ``ini-options`` (described later).
Increase the verbosity level
--------------------------------------------
::
$ pytest --discord-verbose=1
.. figure:: https://cdn.jsdelivr.net/gh/thombashi/pytest-discord@master/ss/pytest-discord_verbose.png
:scale: 80%
:alt: https://github.com/thombashi/pytest-discord/blob/master/ss/pytest-discord_verbose.png
Notification message example
Notification messages may omit information caused by Discord limitations (especially when errors occur).
You can get full messages as an attached markdown file with ``--discord-attach-file`` option.
Options
============================================
Command options
--------------------------------------------
::
notify test results to a discord channel:
--discord-webhook=WEBHOOK_URL
discord webhook url of a discord channel to notify pytest results. you can also specify the value with PYTEST_DISCORD_WEBHOOK environment variable.
--discord-verbose=VERBOSITY_LEVEL
Verbosity level for pytest-discord.
If not set, use the verbosity level of pytest.
Defaults to 0.
you can also specify the value with PYTEST_DISCORD_VERBOSE environment variable.
--discord-username=DISCORD_USERNAME
name for a message. defaults to pytest. you can also specify the value with PYTEST_DISCORD_USERNAME environment variable.
--discord-success-icon=ICON_URL
url to an icon of a successful run. you can also specify the value with PYTEST_DISCORD_SUCCESS_ICON environment variable.
--discord-skip-icon=ICON_URL
url to an icon of a skipped run. you can also specify the value with PYTEST_DISCORD_SKIP_ICON environment variable.
--discord-fail-icon=ICON_URL
url to an icon of a failed run. you can also specify the value with PYTEST_DISCORD_FAIL_ICON environment variable.
--discord-attach-file
post pytest results as a markdown file to a discord channel. you can also specify the value with PYTEST_DISCORD_ATTACH_FILE environment variable.
ini-options
--------------------------------------------
[pytest] ini-options in the first ``pytest.ini``/``tox.ini``/``setup.cfg``/``pyproject.toml (pytest 6.0.0 or later)`` file found:
::
discord_webhook (string):
discord webhook url of a discord channel to notify pytest results.
discord_verbose (string):
Verbosity level for pytest-discord. If not set, use the verbosity level of pytest. Defaults to 0.
discord_username (string):
name for a message. defaults to pytest.
discord_success_icon (string):
url to an icon of a successful run.
discord_skip_icon (string):
url to an icon of a skipped run.
discord_fail_icon (string):
url to an icon of a failed run.
discord_attach_file (bool):
post pytest results as a markdown file to a discord channel.
:Example of ``pyproject.toml``:
.. code-block:: toml
[tool.pytest.ini_options]
discord_webhook = "https://discordapp.com/api/webhooks/..."
md_report_verbose = 1
:Example of ``setup.cfg``:
.. code-block:: ini
[tool:pytest]
discord_webhook = https://discordapp.com/api/webhooks/...
md_report_verbose = 1
Dependencies
============================================
- Python 3.8+
- `Python package dependencies (automatically installed) <https://github.com/thombashi/pytest-discord/network/dependencies>`__
:backlinks: top
:depth: 2
Summary
============================================
|PyPI pkg ver| |Supported Python ver| |Supported Python impl| |CI status| |Test coverage| |CodeQL|
.. |PyPI pkg ver| image:: https://badge.fury.io/py/pytest-discord.svg
:target: https://badge.fury.io/py/pytest-discord
:alt: PyPI package version
.. |Supported Python impl| image:: https://img.shields.io/pypi/implementation/pytest-discord.svg
:target: https://pypi.org/project/pytest-discord
:alt: Supported Python implementations
.. |Supported Python ver| image:: https://img.shields.io/pypi/pyversions/pytest-discord.svg
:target: https://pypi.org/project/pytest-discord
:alt: Supported Python versions
.. |CI status| image:: https://github.com/thombashi/pytest-discord/actions/workflows/ci.yml/badge.svg
:target: https://github.com/thombashi/pytest-discord/actions/workflows/ci.yml
:alt: CI status of Linux/macOS/Windows
.. |Test coverage| image:: https://coveralls.io/repos/github/thombashi/pytest-discord/badge.svg?branch=master
:target: https://coveralls.io/github/thombashi/pytest-discord?branch=master
:alt: Test coverage: coveralls
.. |CodeQL| image:: https://github.com/thombashi/pytest-discord/actions/workflows/github-code-scanning/codeql/badge.svg
:target: https://github.com/thombashi/pytest-discord/actions/workflows/github-code-scanning/codeql
:alt: CodeQL
A pytest plugin to notify test results to a Discord channel.
Installation
============================================
::
pip install pytest-discord
Quick start
============================================
Making a Discord webhook
--------------------------------------------
`Intro to Webhooks – Discord <https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks>`__
Usage
--------------------------------------------
Set a webhook URL when executing ``pytest`` via ``--discord-webhook`` option:
::
$ pytest --discord-webhook=<https://discordapp.com/api/webhooks/...>
.. figure:: https://cdn.jsdelivr.net/gh/thombashi/pytest-discord@master/ss/pytest-discord.png
:scale: 80%
:alt: https://github.com/thombashi/pytest-discord/blob/master/ss/pytest-discord.png
Notification message example
Or, set a webhook URL to an environment variable ``PYTEST_DISCORD_WEBHOOK``:
::
$ export PYTEST_DISCORD_WEBHOOK=<https://discordapp.com/api/webhooks/...>
$ pytest
Or, you can specify a webhook URL of a discord channel via ``ini-options`` (described later).
Increase the verbosity level
--------------------------------------------
::
$ pytest --discord-verbose=1
.. figure:: https://cdn.jsdelivr.net/gh/thombashi/pytest-discord@master/ss/pytest-discord_verbose.png
:scale: 80%
:alt: https://github.com/thombashi/pytest-discord/blob/master/ss/pytest-discord_verbose.png
Notification message example
Notification messages may omit information caused by Discord limitations (especially when errors occur).
You can get full messages as an attached markdown file with ``--discord-attach-file`` option.
Options
============================================
Command options
--------------------------------------------
::
notify test results to a discord channel:
--discord-webhook=WEBHOOK_URL
discord webhook url of a discord channel to notify pytest results. you can also specify the value with PYTEST_DISCORD_WEBHOOK environment variable.
--discord-verbose=VERBOSITY_LEVEL
Verbosity level for pytest-discord.
If not set, use the verbosity level of pytest.
Defaults to 0.
you can also specify the value with PYTEST_DISCORD_VERBOSE environment variable.
--discord-username=DISCORD_USERNAME
name for a message. defaults to pytest. you can also specify the value with PYTEST_DISCORD_USERNAME environment variable.
--discord-success-icon=ICON_URL
url to an icon of a successful run. you can also specify the value with PYTEST_DISCORD_SUCCESS_ICON environment variable.
--discord-skip-icon=ICON_URL
url to an icon of a skipped run. you can also specify the value with PYTEST_DISCORD_SKIP_ICON environment variable.
--discord-fail-icon=ICON_URL
url to an icon of a failed run. you can also specify the value with PYTEST_DISCORD_FAIL_ICON environment variable.
--discord-attach-file
post pytest results as a markdown file to a discord channel. you can also specify the value with PYTEST_DISCORD_ATTACH_FILE environment variable.
ini-options
--------------------------------------------
[pytest] ini-options in the first ``pytest.ini``/``tox.ini``/``setup.cfg``/``pyproject.toml (pytest 6.0.0 or later)`` file found:
::
discord_webhook (string):
discord webhook url of a discord channel to notify pytest results.
discord_verbose (string):
Verbosity level for pytest-discord. If not set, use the verbosity level of pytest. Defaults to 0.
discord_username (string):
name for a message. defaults to pytest.
discord_success_icon (string):
url to an icon of a successful run.
discord_skip_icon (string):
url to an icon of a skipped run.
discord_fail_icon (string):
url to an icon of a failed run.
discord_attach_file (bool):
post pytest results as a markdown file to a discord channel.
:Example of ``pyproject.toml``:
.. code-block:: toml
[tool.pytest.ini_options]
discord_webhook = "https://discordapp.com/api/webhooks/..."
md_report_verbose = 1
:Example of ``setup.cfg``:
.. code-block:: ini
[tool:pytest]
discord_webhook = https://discordapp.com/api/webhooks/...
md_report_verbose = 1
Dependencies
============================================
- Python 3.8+
- `Python package dependencies (automatically installed) <https://github.com/thombashi/pytest-discord/network/dependencies>`__
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
pytest_discord-0.2.0.tar.gz
(59.1 kB
view details)
Built Distribution
File details
Details for the file pytest_discord-0.2.0.tar.gz
.
File metadata
- Download URL: pytest_discord-0.2.0.tar.gz
- Upload date:
- Size: 59.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bda52946adb3e5085bf3603d2df374ae25245f82dbd17b967f867a8bcd3ca77b |
|
MD5 | ac1a25476404909d45806de5e73c7ee1 |
|
BLAKE2b-256 | ab47af777f9c6369c28222dfe8bd409ef85c3a9f9314ddd23ba113af03a94d13 |
File details
Details for the file pytest_discord-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: pytest_discord-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d94ff53b7b7f95f9a427ba81494494bc9df04c236e9824bb56da91669ff35217 |
|
MD5 | e073c3894f0654bb9e83c586e41b603e |
|
BLAKE2b-256 | 672ff496610119e88acc50515dfda1e8adff4e231dadaf8b61074aff511b1f75 |