Testen#

Grundsätzlich wird zwischen statischen und dynamischen Testverfahren unterschieden.

Statische Testverfahren#

werden verwendet um den Quellcode zu überprüfen, wobei dieser jedoch nicht ausgeführt wird. Sie unterteilen sich in

Dynamische Testverfahren#

dienen dem Auffinden von Fehlern beim Ausführen des Quellcodes. Dabei wird zwischen Whitebox- und Backbox-Tests unterschieden.

Whitebox-Tests

werden unter Kenntnis des Quellcodes und der Software-Struktur entwickelt. In Python stehen euch verschiedene Module zur Verfügung:

Unittest

unterstützt euch bei der Automatisierung von Tests.

Mock

erlaubt euch das Erstellen und Verwenden von Mock-Objekten.

Doctest

ermöglicht das Testen von in Python Docstrings geschriebenen Tests.

tox

ermöglicht das Testen in verschiedenen Umgebungen.

Blackbox-Tests

werden ohne Kenntnis des Quellcodes entwickelt. Neben Unittest kann in Python auch Hypothesis für solche Tests verwendet werden.