Für ein Projekt mit Jenkins würde ich gerne Python-Unit-Tests ausführen können. Diese Tests enthalten Interaktionen mit einem eingebetteten Gerät. Die Ergebnisse sollten an Jenkins zurückgemeldet werden.Ausführen von Python-Unit-Tests und Ausgabe der Ergebnisse an Jenkins
Meine aktuelle Setup (mit Python 2.7) sieht folgende
|
| helperModules
|-- customlogger.py
|-- settings.py
|-- serial.py
| tests
|-- test_login
|-- test_communicate_serial
| start.py
im Stammverzeichnis Ich habe eine Datei mit dem Namen start.py, das einige Einstellungen wie ein benutzerdefinierten Logger initialisiert und einige allgemeinen Einstellungen Laden vor dem Ausführen die Unittests. Die Tests selbst befinden sich im Verzeichnistest, die Tests basieren derzeit auf unittest von Python und werden von start.py ausgeführt.
Da ich die Tests ausführen und einen Bericht generieren möchte, der für Jenkins lesbar ist, möchte ich wissen, welche Schritte ich nehmen sollte. Benutze py.test, nose oder xmlrunner? Da die Nase wahrscheinlich nicht mehr gepflegt wird, ist dies nicht bevorzugt. Sollte ich py.test verwenden, muss ich mein Setup anpassen und versuchen, start.py zu entfernen. Die Protokollierung, die ich in meinem start.py eingerichtet habe, ist für das Debuggen notwendig. Wenn ich es also durch das Einfügen in die Testfälle selbst ersetzen muss, wird mein aktuelles Design geändert, allerdings ist diese Protokollierung eine Voraussetzung.
Neugierig was Ihre Gedanken darüber sind, wie würden Sie fortfahren.