Skip to main content

A small test runner library for Python testing

Project description

test-runner—A Runner for Python Tests

Build Status codecov License GPL v3 Code style: black PyPI version Supported Python Versions

Running Python tests is a complicated task, as it seems that there is not standard way of doing it. test-runner implements some heuristics that try to run tests with or without coverage measuring, independent of the used testing framework.


Before you begin, ensure you have met the following requirements:

  • You have installed Python at least in version 3.6.
  • You have a recent Linux machine. The library is most likely to not work on another operating system since it is depending on benchexec for resource handling, which currently only runs on recent versions of Linux.
  • For development it is necessary to have the poetry packaging and dependency management system.

Installing Test Runner

Test Runner can be easily installed from PyPI using the pip utility:

pip install test-runner

Contributing to Test Runner

To contribute to Test Runner, follow these steps:

  1. Fork this repository.
  2. Setup a virtual environment for development using poetry: poetry install.
  3. Create a branch: git checkout -b <branch_name>.
  4. Make your changes and commit them git commit -m '<commit_message>'.
  5. Push to the original branch: git push origin <project_name>/<location>.
  6. Create the pull request.

Please note that we require you to meet the following criteria:

  • Write unit tests for your code.
  • Run linting with flake8 and pylint
  • Run type checking using mypy
  • Format your code according to the black code style

To ease the execution of the tools, we provide a Makefile with various targets. The easiest way to execute all checks is to run make check on a poetry shell. Push your commits only if they pass all checks! These tools are also executed in continuous integration on TravisCI and will also check you pull request. Failing a check will block your pull request from being merged!


See the Contributors page for a list of contributors. Thanks to all contributors!


test-runner is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

test-runner is distributed in the hope that it will be useful but WITHOUT ANY WARRANT; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with test-runner. If not, see

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

test-runner-0.7.0.tar.gz (12.3 kB view hashes)

Uploaded source

Built Distribution

test_runner-0.7.0-py3-none-any.whl (18.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page