Linux-only Pytest plugin to control durations of various test case execution phases
Project description
pytest-timeouts
Linux-only Pytest plugin to control durations of various test case execution phases.
Documentation
For documentation visit pytest-timeouts.readthedocs.io.
About
This plugin has been designed for specific use cases which are out of the scope of famous pytest-timeout
plugin.
It uses a SIGALRM
signal to schedule a timer which breaks the test case.
Features
setup
,execution
andteardown
phase timeouts controllable by:- opts:
--setup-timeout
,--execution-timeout
and--teardown-timeout
- ini:
setup_timeout
,execution_timeout
andteardown_timeout
- mark:
setup_timeout
,execution_timeout
andteardown_timeout
- opts:
- fixed order of timeout settings: opts > markers > ini, controlled by
--timeouts-order
--timeouts-order
allow change order of override timeout settings, and disable some settings, i.e.--timeout-order i
disable markers and opts, any combination is allow- timeout disabled when debugging with PDB
Installation
Stable
pip install pytest-timeouts
Master
pip install git+https://github.com/Scony/pytest-timeouts.git
Usage
Command line
pytest --setup-timeout 2.5 --execution-timeout 2.01 --teardown-timeout 0
pytest.ini
setting
[pytest]
setup_timeout = 2.5
execution_timeout = 2.01
teardown_timeout = 0
Mark
import time
import pytest
@pytest.mark.setup_timeout(0.3)
@pytest.mark.execution_timeout(0.5)
@pytest.mark.teardown_timeout(0.4)
def test_timeout():
time.sleep(1)
Contributors
- Pawel Lampe
- Kamil Luczak
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pytest-timeouts-1.2.1.tar.gz
(5.0 kB
view details)
File details
Details for the file pytest-timeouts-1.2.1.tar.gz
.
File metadata
- Download URL: pytest-timeouts-1.2.1.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 390351afc7ecb422ea0ec38081e0acd91cad416b383944a9a3358087de50c2fb |
|
MD5 | 23875173862eee51a0c22c8ae6888fe9 |
|
BLAKE2b-256 | cf479a8d7fa18736d69d218e303345dfe21755e956fd863b0f043ef854ff84a6 |