Python‑Bibliothek, die Sie noch nicht kennen: Freezegun
Wenn Sie in Python‑Tests die Zeit manipulieren müssen, gibt es ein Tool, das Ihnen das Leben erleichtert: Freezegun.
Freezegun ermöglicht es, die aktuelle Zeit in Ihrem Code zu „einfrieren“, sodass Funktionen, die auf datetime, time oder time.time zugreifen, immer einen festen Wert zurückgeben.
Das ist besonders nützlich, wenn Sie Logik testen, die von Zeitstempeln abhängt – etwa Ablaufprüfungen, Zeitstempel in Datenbankeinträgen oder geplante Aufgaben.
Mit einem einfachen Kontextmanager oder Decorator können Sie die gewünschte Zeit festlegen. Die Bibliothek ist leichtgewichtig, hat keine externen Abhängigkeiten und lässt sich problemlos in bestehende Testframeworks wie pytest integrieren.
Freezegun ist ein kleines, aber mächtiges Werkzeug, das Ihre Testfälle deterministischer macht und unerwartete Zeitabhängigkeiten eliminiert.