Benutzer-Werkzeuge

Webseiten-Werkzeuge


python:pytest

Dies ist eine alte Version des Dokuments!


Inhaltsverzeichnis

  • Tests können in Klassen zusammengefasst werden
    • müssen Test<Whatever> heißen
    • Testmethoden heißen test_<Whatever>
    • diese haben kein init
    • Gemeinsame Variablen können nur als Klassenvariablen deklariert werden
    • jeder ausgührte Test hat eine eigene Instanz der Klasse
      • das setzen von Variablen in einem Test beeinflusst also nicht die Ausführung in einem anderen Test

Begriffe

Fixture

  • Im Prinzip die Testumgebung bzw. jedes Teil davon
    • im Sinne von Fix → Fest, eine feste/gegebene Umgebung in der der Test läuft
    • darunter fallen Funktionen/Methoden, Resourcen (Datenbanken, Netzwerkverbindungen usw.) die eben diesen Zustand zur Verfügung stellen/darstellen
    • auch Mocks von Funktionsaufrufen und API-Calls

Mock

Funktionen (im Sinne von Objekten, Methoden und Funktionen) rufen häufig andere Funktionen, Variablen/Konstanten oder Attribute von Klassen ab um ihre Arbeit zu tun.
Das ist eine zusätzliche Quelle von Fehlern (da eben diese sich bereits falsch verhalten können) und ggf. „kostenintensiv“ (im Sinne von Rechenleistung und RAM oder Ausführungszeit oder aufwendiger Aufbau nötig).
Um diesen Aufwand zu sparen benutzt man Mocks, im Prinzip Simulationen oder Kartonage-Abbilder die nur die relevanten Werte zurückgeben ohne wirklich irgendwelchen Code auszuführen.

  • Funktionen geben einen definierten Rückgabewert zurück
  • Klassen Attribute haben feste Werte
python/pytest.1708700836.txt.gz · Zuletzt geändert: 2024/02/23 16:07 von root