Run Tests Locally

edit

To run tests locally you can make use of the docker images also used when running the whole test suite with Jenkins. Running the full test suite first does some linting and then runs the actual tests with different versions of Python and different web frameworks. For a full overview of the test matrix and supported versions have a look at Jenkins Configuration.

Code Linter

edit

We run two code linters isort and flake8. You can trigger each single one locally by running:

$ ./tests/scripts/docker/isort.sh <pip-cache-dir>
$ ./tests/scripts/docker/flake8.sh <pip-cache-dir>

Test Documentation

edit

We test that the documentation can be generated without errors. You can trigger this check by running:

$ ./tests/scripts/docker/docs.sh

Running Tests

edit

We run the test suite on different combinations of Python versions and web frameworks. For triggering the test suite for a specific combination locally you can run:

$ ./tests/scripts/docker/run_tests.sh python-version framework-version <pip-cache-dir>

The python-version must be of format python:version, e.g. python:3.6 or pypy:2. The framework must be of format framework-version, e.g. django-1.10 or flask-0.12.