Aufbau einer Framework zum Testen von Hardwareschnittstellen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Xodarap93
User
Beiträge: 6
Registriert: Montag 12. März 2018, 13:31

Guten Tag liebe Community,
Thematisch beschäftige ich mich aktuell mit Funktionstests und überlege dafür Python zu verwenden.
Ich versuche mal so viele Informationen zu geben wie möglich:

Mir liegt ein individuelles Prozessorboard mit 2 Prozessoren, auf denen jeweils Ubuntu installiert ist, vor. Mit diesem betreibe ich die Hardware eines "Computers". Es sind also verschiedene Schnittstellen zu weiterer Peripherie vorhanden, wie USB, Ethernet, Lüfter und viele weitere Produktspezifische Schnittstellen.
Ich möchte gerne für jede Schnittstelle Tests erstellen, zum Beispiel:
Lüfter Test - setze GPO Lüfter = 1 -> Abfrage GPI Lüfter = 1 ?

Ich habe also verschiedene Pins die ich als GPIO, als UART, I2C, usw. nutze und nutze diese um spezifische Tests zu erstellen.
Später möchte ich dann mit einem PC über Ethernet oder UART (funktioniert beides schon) auf die Prozessoren mit Putty zugreifen und die Tests starten.

Der Einfachheit halber möchte ich eine Art "Framework" erstellen welches gewisse Grundfeatures ermöglich, wie zum Beispiel:
- Per Befehl "ListAllTests" alle bestehenden Tests im Terminal auflisten
- Ausführen einzelner Tests durch spezifischen Befehl
- Mit dem Befehl "StartAll" sämtliche Tests nacheinander durchführen
- Die Testergebnisse in einem Logfile speichern

So möchte ich später alle Schnittstellen, ohne einen Monitor anschließen zu müssen, per UART oder Ethernet von einem anderen PC über das Terminal testen können.


Meine Frage ist nun, empfiehlt es sich das überhaupt so selbst aufzubauen? ich würde ganz simpel vorgehen, die einzelnen Tests als Python-Module erstellen, per Import dem Framework bekannt machen und dann eben alles über im Framework erstellte Befehle steuern.
Kommt für diese Basic features eventuell ein schon bestehendes Framework in Frage? Da habe ich wirklich noch keine Berührungspunkte mit.

Ich bin auch sehr offen für weitere Hinweise und Tips zu meinem Plan.


Beste Grüße
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Um das programmieren der einzelnen Tests kommst du natuerlich nicht rum, aber discovery, running und reporting sind schon geloeste Probleme in die ich keine Zeit investieren wuerde.

Ich persoenlich benutze nosetests, zusammen mit dem nose-progressive Modul. Andere bevorzugen py.test. Beide koennen, was du vor hast, und im Zweifel noch mehr, an das du noch gar nicht gedacht hast.
Xodarap93
User
Beiträge: 6
Registriert: Montag 12. März 2018, 13:31

Natürlich nicht, dass ist ja auch nicht mein Plan.

Danke schonmal für deine beiden Vorschläge, ich werde die mir mal etwas genauer angucken.
Antworten