Pytest-Using pytest with an existing test suite

Pytest can be used with most existing test suites, but its behavior
differs from other test runners such as
nose <noseintegration>{.interpreted-text role=“ref”} or Python’s
default unittest framework.

Before using this section you will want to
install pytest <getstarted>{.interpreted-text role=“ref”}.

Running an existing test suite with pytest

Say you want to contribute to an existing repository somewhere. After
pulling the code into your development space using some flavor of
version control and (optionally) setting up a virtualenv you will want
to run:

cd <repository>
pip install -e .  # Environment dependent alternatives include
                  # 'python develop' and 'conda develop'

in your project root. This will set up a symlink to your code in
site-packages, allowing you to edit your code while your tests run
against it as if it were installed.

Setting up your project in development mode lets you avoid having to
reinstall every time you want to run your tests, and is less brittle
than mucking about with sys.path to point your tests at local code.

Also consider using tox <use tox>{.interpreted-text role=“ref”}.