Hi ich soll Testtools einführen für mein Ethernet Stm32 Project(FreeRtos/LWIP/ Motorsteuerung). Bisher (Demo/Prototype/nur Teilfunktionalitäten) habe ich nur über python paar UDP packete hin und her geschickt und einzelne funktionalitäten überprüft Was konnt ihr mir empfehlen für: - Unit tests: 1. tessy von Hitex 2. - statische tests: 1. Misra 2. Absinth - Testumgebungen basiernd auf formale Methoden 1. Was gibt es da sonst noch wenn es um Inetgrationstests geht? Danke
Klaus schrieb: > ich soll Testtools einführen Ich würde eher empfehlen: Programmieren richtig lernen (vor allem auch die völlig sprachunbhängigen Grundlagen der Sache). Dazu solide Kenntnisse über das, was man in der Software abbilden will, incl. des mathematischen Background. Dann braucht man keine "Testtools", sondern schreibt sich die Tests einfach selber. Und zwar genau die, die TATSÄCHLICH sinnvoll sind. Leider: Man erwischt auch dann meist nicht alles. Das Problem mit der Komplexität schlägt leider bei den Test ganz genauso zu wie bei der eigentlich zu testenden Software. Sprich: Das Problem wird dadurch niemals aus der Welt geschafft werden können. Es hilft nur gegen die schlimmsten Auswirkungen von nachträglichen Änderungen durch volldumme Programmierer ohne Überblick über die Struktur des Gesamtwerks. Das ist alles, was solche Tests wirklich leisten können. Und auch das nur, wenn es keine Erweiterung der Funktion gibt. Denn dann wären auch wieder die Tests zu erweitern und zwar sukzessive über das Gesamtwerk. Also praktisch ist diese ganze Testerei überwiegend nur nutzloser Mehraufwand. Die hier investierte Zeit fehlt beim eigentlichen Code. Im Prinzip wurde die Sache erfunden, um billige, dumme, austauschbare Programmierer haben zu können. Klappt nur leider nicht wirklich, das müssen die "Entscheider" aber immer erst auf die harte Tour lernen...
Och Nö, c-Hauer, bist du irgendwann in den Siebzigern hängen geblieben? Damals hat man nämlich schon festgestellt, dass Unit- und Integrationstests sinnvoll sind. Und ja, natürlich muss man die selbst schreiben, aber sinnvollerweise lässt man sich das rundherum von einem Framework abnehmen. Irgendwann in 70ern hat man halt gemerkt, dass Menschen nicht unfehlbar sind, aber davon hast du noch nix gehört, dementsprechend auch nicht von testgetriebener Entwicklung. Topic: Für Unittests gäbe es z.B. noch cpputest (auch für c geeignet), cmocka, Unity (evtl mit ceedling), etc. pp. Welches Framework man nimmt ist im Endeffekt Geschmackssache, bzw. eine Frage der benötigten Features. Nicht jedes läuft gleich einfach auf der Zielhardware. Stativ Analyzer und MISRA-Checker gibts ja mittlerweile wie Sand am Meer, kann man also ruhig mehrere gleichzeitig verwenden (nicht jeder findet das gleiche). Beispiele wären cppcheck, lint, Codesonar. Bis auflibt frei verfügbar, und lint kostet auch nicht die Welt. Codesonar kann sogar schöne bunte Grafiken fürs Management generieren, freut den Chef dann dass er im nächsten Meeting was zum herzeigen hat.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.