Forum: PC-Programmierung python, pytest und test automatisierung


von H. R. (hacker_r)


Lesenswert?

Hi
Was für Elemente fehlen noch in meine Testautomatisierung?

ich habe paar WIFI enabled STM32 boards. Ich habe über python und pytest 
~200 Tests geschrieben die einige Debug Counter und Variablen über 
UDP/TCP auslesen. Ich überprüfe ob alle UDP Packete angekommen sind, ob 
ein Reset/Hardfault/… stattgefunden hat, ...
Alle Test cases haben ein pass/fail Kriterium was als assert in pytest 
realisiert ist. Jenkins führt die Tests aus. Über Pytest kann ich ein 
HTML Report generieren.

Gibt es sonst noch Tools die ich verwenden konnte?

Gibt es für Pytest ein Userinterface mit der ich einzelne Tests 
auswählen kann? Bietet Pycharm besondere Methoden eine Auswahl von Tests 
auszuführen?  Also nicht über cmd line interface.

von Imonbln (Gast)


Lesenswert?

H. R. schrieb:
> Gibt es sonst noch Tools die ich verwenden konnte?

Du solltest mindestens noch coverage in deine CI aufnehmen. 100% 
Testerfolg bei 1% coverage ist halt auch irgendwie doof.
Einen Fuzzer wie pythonfuzz laufen zu lassen, ist gerade an 
Schnittstellen wie UDP/TCP auch immer eine gute Idee. Und es fehlen noch 
Integration und Systemtests in ein Setup, auch wenn ich da zurzeit keine 
Tools Empfehlung geben kann.

von 100Ω W. (tr0ll) Benutzerseite


Lesenswert?

H. R. schrieb:
> Gibt es sonst noch Tools die ich verwenden konnte?

Robotframework

von Ein Kommentar (Gast)


Lesenswert?

Userinterface? Normalerweise will man doch die Tests automatisiert im 
Build Prozess ablaufen lassen. Und wenn nach einer Änderung ein Dutzend 
Tests fehlschlagen, hast du doch ein ganz anderes Problem.

Was hast du vor?

Nach meinen Erfahrungen fehlen auch dir 2 wesentliche Punkte:
- Die Tests für Anforderungen und Abhängigkeiten, an die niemand gedacht 
hat. Die erst im Produktivbetrieb auffallen.
- Ein Sklave, der bei neuen Features die zusätzlichen Testfälle 
implementiert.

von Sid Greybeard (Gast)


Lesenswert?

H. R. schrieb:
> Hi
> Was für Elemente fehlen noch in meine Testautomatisierung?
>
> ich habe paar WIFI enabled STM32 boards. Ich habe über python und pytest
> ~200 Tests geschrieben die einige Debug Counter und Variablen über
> UDP/TCP auslesen.

Für (TCP/IP)Networking 200 Tests?

Dann fehlen noch rund 2000 mehr Tests...
BT;DT.

Coverage ist definitiv die hier fehlende Kenngrösse.

von Ein Kommentar (Gast)


Lesenswert?

Habe den Eindruck, diese Art von Tests gehen am Problem vorbei.

Diese Tools sind sicherlich sinnvoll, aber damit bekommt man nur 
einfache Kodierfehler in den Griff.

Das große Problem - Bei den Änderungen und Erweiterungen haben die 
Entwickler ein paar Anforderungen und Abhängigkeiten übersehen. Damit 
sich die Termine einhalten lassen, wird dann der einfachste Workaround 
eingebaut. Nach ein paar Jahren blickt keiner mehr durch und jede 
Änderung verursacht an unvorhersehbare Stellen neue Fehler.

Eigentlich müssten wir vor der Kodierung die Fehler in Anforderungsliste 
und Konzept finden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.