Skip to main content

Makes pytest skip tests that don not need rerunning

Project description

PyPI version Python versions See Build Status on Travis CI See Build Status on AppVeyor

Makes pytest skip tests that don’t need rerunning

How pytest-avoidance avoids tests

Each test is run with coverage enabled.

After running each test, pytest-avoidance stores a list of which files each test touched.

The next time a test run is requested, pytest-avoidance checks if any of the files covered by this test have changed. If none have, the test can be delared to PASS, even without running it!

pytest-avoidance does not cache failures. Mostly because AFAIU bazel doesn’t either, and I’m just guessing they have good reasons not to…


You can install “pytest-avoidance” via pip from PyPI:

$ pip install pytest-avoidance


If you encounter any problems, please file an issue along with a detailed description.


Contributions are very welcome. Please run tests before making PRs:

$ tox –parallel=auto –skip-missing-interpreters=true

Releasing a new Version

  1. Do git tag | cat and think about what the next version number should be.

  2. Do git tag --annotate 1.2.3 to set the next version number. The text you write for this tag will show up as the release description on Github, write something nice! And remember that the first line is the subject line for the release.

  3. tox -e pypi

  4. git push --tags

Your release should now be visible on the pytest-avoidance page on Pypi.


Distributed under the terms of the MIT license, “pytest-avoidance” is free and open source software.

This pytest plugin was generated with Cookiecutter along with @hackebrot’s cookiecutter-pytest-plugin template.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pytest_avoidance-0.3.0-py2.py3-none-any.whl (6.2 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page