Erste Schritte mit Python tox

Erste Schritte mit Python tox

tox ist ein Projekt, mit dem man Unittests gegen verschiedenen Python-Versionen mit einfachen Schritten ausführen kann. Um das zu erreichen, werden ein paar Konfigurationsdateien benötigt.

Doch um tox für ein Projekt ausführen zu können, muss tox erst einmal installiert sein:

pip install tox

Ist tox installiert, braucht das Python-Projekt, das tox nutzen will, folgende Dateien:

  • Eine pyproject.toml oder setup.py
  • tox.ini

In diesem Post möchte ich zeigen, wie man das mit einer setup.py realisiert. Die setup.py ist eine Datei, die sich um die Installation eines Python-Projektes kümmert. Diese Datei kann Teil eines Python-Projektes sein ohne dass man dafür tox braucht. Aber falls man tox verwenden möchte, wird diese Datei benötigt (oder eben alternativ pyproject.toml).

Für meine Testzwecke sah die setup.py folgendermaßen aus:

from setuptools import setup

if __name__ == "__main__":
    setup(
        name="Playground",
        description="Playground for tox",
        author="Myself")

Jetzt brauchen wir noch die tox.ini. Mit dieser Konfigurationsdatei weiß tox, gegen welche Python-Version die Tests laufen sollen und wie der Befehl gestartet werden soll. Diese ini-Datei kann z.B. so aussehen:

[tox]
envlist = py36, py37, py38, py39

[testenv]
deps = -rrequirements-dev.txt
commands = pytest {posargs}

Hat man die setup.py und tox.ini kann man die Tests mit dem Befehl

tox

ausführen. Wenn man nicht alle Pythonversionen installiert hat, gegen die man die Unittests eigentlich laufen lassen möchte, dann wird tox meckern (wie in meinem Fall sichtbar). Doch die lassen sich einfach nachinstallieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert