Fail tests that take too long to run
Project description
pytest-fail-slow is a pytest plugin for making tests fail that take too long to run. It adds a --fail-slow DURATION command-line option to pytest that causes any otherwise-passing tests that run for longer than the given duration to be marked as failures. Note that slow tests will still be run to completion; if you want them to instead be stopped early, use pytest-timeout.
A duration can be supplied to the --fail-slow option as either a bare floating-point number of seconds or as a floating-point number followed by one of the following units (case insensitive):
h, hour, hours
m, min, mins, minute, minutes
s, sec, secs, second, seconds
ms, milli, millisec, milliseconds
us, μs, micro, microsec, microseconds
If pytest-fail-slow marks a test as a failure, the output will include the test’s duration and the duration threshold, like so:
________________________________ test_func ________________________________ Test passed but took too long to run: Duration 123.0s > 5.0s
Note: Only the durations for tests themselves are taken into consideration. If a test passes in less than the specified duration, but one or more fixture setups/teardowns take longer than the duration, the test will still be marked as passing.
Installation
pytest-fail-slow requires Python 3.6 or higher and pytest 6.0 or higher. Just use pip for Python 3 (You have pip, right?) to install it:
python3 -m pip install pytest-fail-slow
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
Built Distribution
Hashes for pytest_fail_slow-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90158a2f8757b4dce7da714a2ceb73f6204e948e6b6c49b60d4d462e29c2d77f |
|
MD5 | 1f3fed4ed4d953398045ee23b1674fab |
|
BLAKE2b-256 | e18a8d2a153dbaf6ee49fc19cb82380b430f7d419d692b94fcc845a250918677 |