Ich habe ein Python-Projekt, das auf einem bestimmten Modul, receivers.py
, basiert, importiert wird.Wie schreibe ich einen Python-Test, der prüft, ob mein Code ein Modul importiert
Ich möchte einen Test schreiben, um sicherzustellen, dass es importiert wird, aber ich möchte auch andere Tests für das Verhalten des Codes innerhalb des Moduls schreiben.
Das Problem ist, dass, wenn ich in meinem Test-Suite alle Tests überall, die es automatisch importieren oder dann von receivers.py
alles Patch wird das Modul importieren, möglicherweise macht den Test für den Import falsch passieren.
Irgendwelche Ideen?
. (Anmerkung: speziell das ist ein Django-Projekt)
Das hört sich überhaupt nicht nach einem nützlichen Test an; sicherlich würde ein "ImportError" ausgelöst, wenn das Modul nicht verfügbar ist. Sagen Sie, dass der Import bedingt ist? –
Das Problem, das ich zu lösen versuche, ist, dass es eine funktionale Anforderung gibt, dass Empfänger im normalen Betrieb des Web-Frameworks importiert werden. Dies ist die Art von Sache, die verpasst wird/anfällig für Regressionen ist. Mein Problem ist, dass gerade beim Testen der Empfänger bedeutet, dass sie während Tests importiert werden, selbst wenn sie in der Hauptcodebasis verpasst wurden. – seddonym
Sie möchten also einen * Integrationstest *, einen, der den Code ausübt, der die Empfänger verwendet. –