A pytest plugin for ensuring max suite time
Project description
pytest-suite-timeout
A pytest plugin for ensuring max suite time.
Really though, it's: if the timeout expires, no new tests are started.
A use case
Works great in conjunction with pytest-repeat.
Say your debugging a flaky test and just want to run it a bunch of times, but not longer than say 10 minutes (600 seconds).
After installing both pytest-repeat
and pytest-suite-timeout
you can say:
$ pytest test_something.py::test_func --count=1000 --suite-timeout=600
That will run a test 1000 times, if that's less than 600 seconds. If it takes longer than 600 seconds, it will stop running new tests after 600 seconds.
Installation
From PyPI:
$ pip install pytest-suite-timeout
Usage
Specify the max suite time with --suite-timeout
, in seconds (float).
Example of max 90 seconds:
$ pytest --suite-timeout=90
Defaults to no timeout
If you don't pass in --suite-timeout
, nothing happens.
Timeout behavior
Timeout is done between tests.
If a timeout is noticed, pytest.exit()
is called, stopping all further testing.
Contributing
Contributions are welcome. Tests can be run with tox. Test coverage is now 100%. Please make sure to keep it at 100%. If you have an awesome pull request and need help with getting coverage back up, let me know.
License
Distributed under the terms of the MIT license, "pytest-suite-timeout" is free and open source software
Issues
If you encounter any problems, please file an issue along with a detailed description.
Changelog
See changelog.md
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_suite_timeout-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f536ed8906f0b159c5f20e58714180536fb9a9f786e5f6dfb148a54b0b543c4 |
|
MD5 | 3b1033ea1905ac94ad9fe52bca3e6b4e |
|
BLAKE2b-256 | 93e86d879dcad2e9b937c3694adf1cea0df3c646d9bc16d1a5088c937685d84b |
Hashes for pytest_suite_timeout-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb79bea59edbe36164cd6e09f124fda623ce2d97b71b2853c84f07ee1ba76228 |
|
MD5 | f8e551d14946c96a46db97e2e36c0b6e |
|
BLAKE2b-256 | 9388870b44fb8ccb2b63fd9b48b65eec557546eeb644b7d8bc860c3d77038cae |