Forum: Mikrocontroller und Digitale Elektronik Software-Test im Embedded-Bereich


von Gerd (Gast)


Lesenswert?

Hallo,

ich beschäftige mich mit Software-Test im Embedded-Bereich?

Irgendwie testet ja jeder seine Software mehr oder weniger effektiv. Ich 
bin am Überlegen, wie ich den Testaufwand reduzieren bzw. das Ergebnis 
noch verbessern kann.

Deshalb ein Rundruf. Wie testet Ihr Eure Software mit welchem Ergebnis?

von Tombstone (Gast)


Lesenswert?

Immer kleine Teile davon funktionsfähig machen.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Automatische Tests (unit testing).

von Gerd (Gast)


Lesenswert?

Hmmm, nur zwei Antworten.

Testet hier fast keiner seine Software?

von Maxxie (Gast)


Lesenswert?


von Mark B. (markbrandis)


Lesenswert?

Gerd schrieb:
> Testet hier fast keiner seine Software?

Ha doch.
Bei einer Daimler-Tochterfirma wurde die Testsoftware für ein Projekt 
selbst geschrieben. Es ging da um einen Protokollstack (XCP). Im 
Endeffekt muss auf ein empfangenes Telegramm eine bestimmte Antwort 
kommen. Getestet hat man dies, indem man die Testanfragen, die 
gewünschten Antworten und die tatsächlichen Antworten in Arrays gesteckt 
hat und diese eben zur Laufzeit füllt bzw. vergleicht. Je nachdem war 
dann eben der Testfall bestanden oder nicht. Per Compiler-Defines konnte 
man außerdem diesen Protokollstack auf dem PC laufen lassen (dann wurden 
die Test-Arrays in eine HTML-Datei geschrieben) oder aber auf dem 
Mikrocontroller (dann konnte man im zugehörigen Debugger die 
Testschritte einzeln durchsteppen).

von Michael X. (Firma: vyuxc) (der-michl)


Lesenswert?

Für die Funktionen Testfälle aufstellen und mit Oszi und Logicanalyzer 
verifizieren.

von Arne (Gast)


Lesenswert?

>Testet hier fast keiner seine Software?

Alles nur überflüssiger Ballast. Wozu gibts denn Kunden? ;)

Falls Du in C entwickelst, könnte das hier was für Dich sein:
http://cunit.sourceforge.net/index.html

von Paule1 (Gast)


Lesenswert?

Man unterscheidet: Modultest, Integrationstest, Systemtest

http://de.wikipedia.org/wiki/Softwaretest

von Mark B. (markbrandis)


Lesenswert?

Arne schrieb:
> Falls Du in C entwickelst, könnte das hier was für Dich sein:
> http://cunit.sourceforge.net/index.html

Schade ist nur, dass es anscheinend nicht mehr weiterentwickelt wird. 
(Letzter Stand wohl von 2006)

von StinkyWinky (Gast)


Lesenswert?

Mit cunit auf dem PC. Das ergibt nebenbei noch die Zweitmeinung eines 
anderen Compilers.
Beitrag "Teststrategien für Embedded Devices"

von Gerd (Gast)


Lesenswert?

Paule1 schrieb:

> Man unterscheidet: Modultest, Integrationstest, Systemtest

Die Theorie kenn ich wohl. Meine Frage ist, welche Erfahrungen Ihr mit 
Software-Test gemacht habt. Oder anders ausgedrückt, welche Verfahren 
haben eine gute Fehlererkennungsquote und sind außerdem noch sehr 
effizient?

von Mark B. (markbrandis)


Lesenswert?

Um diese Frage besser beantworten zu können, solltest Du mal ein 
bisschen mehr über das zu testende System verraten. Einen allein 
werkelnden 8-Bit-Assembler-µC wird man anders testen als eine 32-Bit 
Maschine, die ordentlich Speicher hat, in C++ programmiert wird und mit 
diversen Gegenstellen kommuniziert.

von Gerd (Gast)


Lesenswert?

Mark Brandis schrieb:

> Um diese Frage besser beantworten zu können, solltest Du mal ein
> bisschen mehr über das zu testende System verraten.

Das ist gar nicht konkret gemeint.

Ich habe verschiedene Testverfahren bei mir ausprobiert mit sehr 
unterschiedlichen Erfolgen und Zeitaufwänden. Allerdings habe ich nicht 
die Zeit gehabt, den Vergleich bei ein und denselben Projekt 
durchzuführen, sodass ein direkter Vergleich der Verfahren schwierig 
ist.

Wenn ich davon mal losgelöst, nur auf die Anzahl der gefundenen Fehler 
schaue, so ist mein erfolgreichstes Verfahren bis jetzt der Code Review 
gewesen.

Aber ich denke, hier hat jeder seine eigenen Erfahrungen gemacht. 
Deshalb meine Frage wie testet Ihr, mit welchem Erfolg? Mit welchen 
Verfahren habt Ihr gute Erfahrungen gemacht?

von Mark B. (markbrandis)


Lesenswert?

Ein Code Review finde ich in der Tat empfehlenswert. Ist allerdings 
schwierig das alleine durchzuführen, wenn man selbst den Code 
geschrieben hat ;-) (da ja der "Reviewende" nicht der Ersteller des 
Codes sein soll)

von Gerd (Gast)


Lesenswert?

Mark Brandis schrieb:

> Ist allerdings schwierig das alleine durchzuführen, wenn man selbst den
> Code geschrieben hat ;-)

Wer sagt, das ich alleine bin bzw. das ich den Test als einziger 
durchführen muss?

von Alter Kacker (Gast)


Lesenswert?

keiner. und?

von Mark B. (markbrandis)


Lesenswert?

Gerd schrieb:
> Wer sagt, das ich alleine bin bzw. das ich den Test als einziger
> durchführen muss?

Du selbst.

Gerd schrieb:
> Hallo,
>
> ich beschäftige mich mit Software-Test im Embedded-Bereich?
>
> Irgendwie testet ja jeder seine Software mehr oder weniger effektiv. Ich
> bin am Überlegen, wie ich den Testaufwand reduzieren bzw. das Ergebnis
> noch verbessern kann.

Da steht nix von "wir".

von Gerd (Gast)


Lesenswert?

Mark Brandis schrieb:

> Da steht nix von "wir".

Das ist in der Tat etwas verwirrend. Deshalb möchte ich das hier 
aufklären:

Wir sind mehrere Entwickler in der Abteilung. Das Testen ist von allen 
eine ungeliebte Tätigkeit. Ich bin allerdings der Meinung (und 
vielleicht auch nur der Hoffnung) das man die Testzeit bei gleichen 
Ergebnis verkürzen kann.

Wegen dieser Meinung (oder auch Hoffnung) bin ich wahrscheinlich deshalb 
auch der einzigste bei uns in der Abteilung, der mit der Testerei 
experimentiert. Deshalb das "ich".

von chester (Gast)


Lesenswert?

> Das Testen ist von allen eine ungeliebte Tätigkeit.

Ich motiviere mich immer zu ausreichenden Tests, in dem
ich an die Fehlersuche am Live-System mit unfreundlichen Kunden
im Nacken denke.

von TPT (Gast)


Lesenswert?

Die Firma PikeTec in Berlin stellt das Testwerkzeug Time Partition 
Testing für den Test von Steuerungs- und Regelungssystemen her.
Weitere Infos kann man auch unter 
http://www.piketec.com/products/tpt.php oder bei Wikipedia unter 
http://de.wikipedia.org/wiki/TPT_(Software) 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.