Die Prüfung auf ImportErrors in Python
-
20-08-2019 - |
Frage
Wir haben ein echtes Problem mit Menschen in Code überprüft, die nicht da funktioniert etwas Refactoring worden ist. Zugegeben, das ist zum Teil, weil unsere Entwickler nicht wirklich keine guten Werkzeuge haben für diese Art von Fehlern leicht zu finden.
Gibt es irgendwelche Werkzeuge helfen ImportErrors in Python zu finden? Natürlich ist hier die richtige Antwort ist „Sie Ihre Unit-Tests für das verwendet werden soll.“ Aber, ich bin in Land Legacy-Code (zumindest von Michael Feathers Definition), so dass unsere Unit-Tests etwas sind wir arbeiten stark.
In der Zwischenzeit wäre es schön, eine Art von Werkzeug zu haben, die durch jedes Verzeichnis gehen wird und jede Datei importieren in ihr nur alle Skripte zu finden, die ImportErrors haben (wie sagen, ob eine Datei oder Klasse wurde vor kurzem umbenannt) . Ich nehme an, dies wäre nicht schrecklich schwer, mich zu schreiben, aber gibt es Programme, die bereits geschrieben werden, dies zu tun?
Lösung
PyChecker ist für Sie. Es importiert die Module und werden diese Fehler finden.
http://pychecker.sourceforge.net/
Oh, und „Pylint
Andere Tipps
So etwas wie das?
import os
for x in os.listdir("some/path"):
execfile( x )
Ist das genug, oder würden Sie brauchen mehr?
Hinweis, dass jedes Modul, das if __name__ == "__main__":
fehlt wird - natürlich -. Ausziehen und beginnen Sachen tun