Martin Heininger (HEICON) and Alexander Weiss:
Strukturelle Tests auf höheren Testebenen

Wie kann die Vollständigkeit von Integrations- und Systemtests eingebetteter Systeme gemessen werden? Mathematisch exakt tut man dies mit strukturellen Tests. Leider hat die hierzu oftmals verwendete SW-Instrumentierung den Nachteil, dass sie das Zeitverhalten des Releasecodes und eine ganze Menge anderer Dinge verfälscht. Bei Modultests kommt es darauf nicht unbedingt an, bei Tests höherer Ebenen meist aber schon. Was also tun?

Im Vortrag (und in der begleitenden Ausstellung) wird eine neue Beobachtungsmethode vorgestellt, die mittels eines live synchronisierten digitalen Zwillings nichtintrusiv und kontinuierlich die strukturelle Testabdeckung misst und damit eine exakte Aussage liefert, wie viele weiße Flecken bei der Ausführung der höheren Tests verblieben sind. Ist dieser nicht ausgeführte Code nur für Modultests oder gar nicht erreichbar? Oder fehlt da der eine oder andere Test?

Zudem erlaubt der tiefe Blick in den Prozessor (ohne dass die Applikation dadurch beeinflusst wird) auch die parallele Überwachung einer Vielzahl komplexer Timing -Constraints. Diese lassen sich bequem in einer Hochsprache beschreiben und schlagen Alarm, wenn nach zehn Stunden Betrieb eine Funktion eine Mikrosekunde zu lange gebraucht hat. Ohne SW-Instrumentierung.

Um die Testbarkeit eines eingebetteten Systems derart zu verbessern, müssen einige Soft- und Hardwarevoraussetzungen bei der Planung der Systemarchitektur berücksichtigt werden. Am Ende des Vortrags werden auch diese erläutert.