Pytest plugin for marking tests as a bug
Project description
pytest-bug
Pytest plugin for marking tests as a bug
Installation
pip install pytest-bug
Example
import pytest
@pytest.mark.bug("C18", "Critical bug") # mark skip test
def test_one():
assert False
@pytest.mark.bug("C39", "Minor bug", run=True) # mark xfail test if fail else pass
def test_two():
assert False
@pytest.mark.bug("C41", "Minor bug", run=True)
def test_three():
assert True
@pytest.mark.bug("Bug all tests")
class TestFour:
def test_one(self): # mark skip test
assert False
def test_two(self): # mark skip test
assert True
@pytest.mark.bug("Unstable tests", run=True)
class TestFive:
def test_one(self): # mark xfail
assert False
def test_two(self): # pass
assert True
$ pytest
======================== test session starts ========================
platform linux -- Python 3.x.y, pytest-x.y.z, py-x.y.z, pluggy-x.y.z
cachedir: $PYTHON_PREFIX/.pytest_cache
rootdir: $REGENDOC_TMPDIR
plugins: bug-x.y.z
collected 7 items
test_sample.py bfpbbfp
---------- Bugs skipped: 3 Bugs passed: 2 Bugs failed: 2 ----------
=================== 2 passed, 5 skipped in 0.10s ===================
Symbols:
b
- bug skipf
- bug failp
- bug pass
verbosity
$ pytest -v
======================== test session starts ========================
platform linux -- Python 3.x.y, pytest-x.y.z, py-x.y.z, pluggy-x.y.z
cachedir: $PYTHON_PREFIX/.pytest_cache
rootdir: $REGENDOC_TMPDIR
plugins: bug-x.y.z
collected 7 items
test_sample.py::test_one BUG-SKIP [ 14%]
test_sample.py::test_two BUG-FAIL [ 28%]
test_sample.py::test_three BUG-PASS [ 42%]
test_sample.py::TestFour::test_one BUG-SKIP [ 57%]
test_sample.py::TestFour::test_two BUG-SKIP [ 71%]
test_sample.py::TestFive::test_one BUG-FAIL [ 85%]
test_sample.py::TestFive::test_two BUG-PASS [100%]
---------- Bugs skipped: 3 Bugs passed: 2 Bugs failed: 2 ----------
=================== 2 passed, 5 skipped in 0.10s ===================
Options:
option | description | config |
---|---|---|
--bug-no-stats | Disabling summary statistics | bug_summary_stats (bool) |
--bug-pattern=REGEX | Run matching tests marked as bug | - |
--bug-all-run | Includes all bugs in the run | - |
--bug-all-skip | Disables all bugs in the run | - |
--bug-skip-letter=LETTER | Set to output in console for skip-bug (default: b) | bug_skip_letter (string) |
--bug-fail-letter=LETTER | Set to output in console for fail-bug (default: f) | bug_fail_letter (string) |
--bug-pass-letter=LETTER | Set to output in console for pass-bug (default: p) | bug_pass_letter (string) |
--bug-skip-word=WORLD | Set to output in console for skip-bug verbosity (default: BUG-SKIP) | bug_skip_word (string) |
--bug-fail-word=WORLD | Set to output in console for fail-bug verbosity (default: BUG-FAIL) | bug_fail_word (string) |
--bug-pass-word=WORLD | Set to output in console for fail-bug verbosity (default: BUG-PASS) | bug_pass_word (string) |
Contributions are very welcome.
Getting started
- python 3.12
- pipenv 2023.11.15+
- Clone the repository
git clone https://github.com/tolstislon/pytest-bug.git cd pytest-bug
- Install dev dependencies
pipenv install --dev pipenv shell
- Run ruff format
pipenv run format
- Run ruff check
pipenv run check
- Run the tests
pipenv run tests
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_bug-1.5.0.tar.gz
(12.4 kB
view details)
Built Distribution
File details
Details for the file pytest_bug-1.5.0.tar.gz
.
File metadata
- Download URL: pytest_bug-1.5.0.tar.gz
- Upload date:
- Size: 12.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.23
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
43f8cdc2696cef548a75288367fb5fc6c02b4134d459431c9fabf782335aff85
|
|
MD5 |
5fd8dc42d9c23c0621df56da8dba42a1
|
|
BLAKE2b-256 |
4da99286bbed493f751ecc14443c2826e681f82efc39754161f777e7504161b3
|
File details
Details for the file pytest_bug-1.5.0-py3-none-any.whl
.
File metadata
- Download URL: pytest_bug-1.5.0-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.23
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
4de9481139baefb9c37a13a552ee4a04ac653c37af9a90546c4d32c5d7a041d8
|
|
MD5 |
3c9398d22e0a3f40a4bf9455f5391477
|
|
BLAKE2b-256 |
cd4feea9c1b3924364f0527396badd5af36e26d97f87af39fa375a474b07b0b8
|