22698.jpg

Alle Bilder: MicroNova

Die ersten elektrischen und elektronischen Steuergeräte im Fahrzeug waren Einzelsteuergeräte wie beispielsweise das Motorsteuergerät. Daraus ergab sich eine sehr heterogene Testlandschaft, denn für jedes Steuergerät wurde die passende Prüfumgebung entwickelt. Begründet durch starke Vernetzung heutiger Steuergeräte ergeben sich neue Herausforderungen an Testsysteme. EXAM (EXtended Automation Method) ist als Testframework konzipiert. Es liefert dem Testingenieur eine Entwicklungsumgebung für seine Themen, die er individuell anpassen kann.

Mit der Verwendung von Eclipse RCP setzt EXAM auf eine Basis, die sich im Bereich der Software-Entwicklung bereits etabliert hat und so eine sichere Grundlage für zukünftige Weiterentwicklungen darstellt. Viele namhafte Unternehmen beteiligen sich an der Weiterentwicklung von Eclipse. Durch die Nutzung des Eclipse RCP lassen sich Erweiterungs-Plugins in die Testentwicklungsumgebung integrieren und so auf den jeweiligen Einsatzzweck anpassen. Auf diese Weise entstehen immer neue Erweiterungen, die sich entsprechend auch in EXAM einbinden lassen.

EXAM bedient im Testmanagement-Prozess den kompletten Teilbereich Test Execution Management.

EXAM bedient im Testmanagement-Prozess den kompletten Teilbereich Test Execution Management.

So bietet etwa das BIRT-Projekt (Business Interchange and Report Tool) eine leistungsfähige Schnittstelle, um Testergebnisse auszutauschen und um Reports sowie Dokumente zu erzeugen. Um EXAM in den Testmanagement-Prozess einzubinden, bestehen Schnittstellen zum Requirement-Tool Doors von IBM sowie zu Testbench von Imbus.

Das auf Groovy basierende Scripting erlaubt die Implementierung von modellbasierten Funktionen, um Änderungen an EXAM-Objekten vollautomatisiert vorzunehmen. Der zugehörige Editor bietet als Grundfunktionen die Syntaxhervorhebung, Code-Vervollständigung und generische Skripterzeugung aus Template-Dateien. Ferner können die Testdesigner Skripte mit Hilfe des XMI-Exports untereinander austauschen.

Die Beschreibung der Testfälle erfolgt weitgehend unabhängig vom Testsystem mit abstrakten Funktionen des zu testenden Systems (DUT – Device Under Test) aus der EXAM-Bibliothek, so dass Tester sich somit beim Erstellen der Testfälle auf den Testinhalt statt auf das Prüfsystem konzentrieren können.

Rollenbasiert, flexibel und zukunftssicher testen

Für das erfolgreiche Arbeiten im Team ist ein entsprechendes Rollenkonzept nötig, welches sicher stellt, dass die Aufgaben und Schnittstellen der einzelnen Teammitglieder exakt definiert sind. EXAM bietet ein solches Rollenmodell, nach dem sich Testfälle erstellen und ausführen sowie die Ergebnisse verwerten lassen. Selbst das Erstellen von Reports ist möglich. Ein „one system fits all“ ist im Testen jedoch nicht möglich. Aus diesem Grund muss ein gemeinsames zukunftssicheres System die Grundlage des Testens darstellen, wofür sich ein Open-Source-Ansatz besonders eignet. So lassen sich die Elemente, die entwickelt werden, in möglichst vielen Anwendungsbereichen einsetzen: mit positiven Auswirkungen für die Entwicklungs- und Unterhaltskosten.

22700.jpg

Die Testautomatisierung EXAM im Einsatz am Beispiel der „Debug Perspective", die ein integriertes Debugging für eine effizientere Fehleranalyse bietet.

Die Grundlage für jeden EXAM-Testfall bildet eine entsprechende Spezifikation in Textform, die für alle Beteiligten mit dem entsprechenden Systemwissen verständlich ist. Mit EXAM überführen die Anwender nun auf Basis abstrakter Bibliotheksfunktionen, die den Funktionen des Systems im Fahrzeug entsprechen, die vorgegebene Testspezifikation in ein UML-Modell. Das Modell ist durch die abstrakten Namen und Beschreibungen ähnlich einfach zu lesen wie die als Basis verwendete Testspezifikation. Die zur Beschreibung des Testfalls verwendeten Bibliotheksfunktionen stehen als Interfaces zur Verfügung sowie ebenfalls als Open-Source. Daher müssen Anwender beim Modellieren noch nicht genau bestimmen, welche Testsysteme den Testfall schlussendlich ausführen sollen.

Die Auswahl der konkreten Implementierung – also der eigentlichen Codes zum Beispiel für ein spezielles Testsystem – erfolgt erst zum Zeitpunkt der Testausführung durch sogenannte SystemConfigurations. Abstrakte Bibliotheksfunktionen gewährleisten zudem, dass auch Teammitglieder ohne Programmierkenntnisse den Inhalt des Testfalls überprüfen und bewerten können.

Anschließend übernimmt der EXAM-Codegenerator das Erstellen des ausführbaren Codes, indem er aus dem UML-Modell den ausführbaren Python-Code erzeugt. Um den abstrakten Testfall auf einem bestimmten System auszuführen, muss der Tester nur den so generierten Code auf den Testrechner synchronisieren sowie die entsprechende SystemConfiguration für das Testsystem auswählen. Eine zentrale Reportdatenbank speichert die Ergebnisse und erzeugt entsprechende Auswertungen.

Standort- und unternehmensübergreifende Tests durchführen

Nicht nur die verschiedenen Teststufen erfolgen häufig an verschiedenen Standorten, die Teams führen Tests heutzutage auch innerhalb einer Stufe an Arbeitsplätzen durch, die räumlich voneinander getrennt sind. So findet zum Beispiel ein Komponententest vielfach beim Zulieferer statt, während der Integrationstest hingegen an Standorten des OEMs erfolgt. Daraus resultiert die Notwendigkeit, über Standorte hinweg gemeinsam Tests im Team zu entwickeln.

In EXAM arbeiten die Teammitglieder auf einer gemeinsamen zentralen Datenbank. Durch diese zentrale Modelldatenbank steht allen Nutzern standortunabhängig ein einheitliches Testmodell zur Verfügung. Somit können die Anwender gemeinsam an den Testinhalten arbeiten; Testthemen lassen sich so auch gut auf verschiedene Personen aufteilen ohne dass räumliche Grenzen eine Rolle spielen. Des Weiteren fördert dieser zentrale Ansatz die Diskussion über Tests und mögliche Lösungen, da alle Anwender von den gleichen Inhalten „sprechen“.

Seit der Veröffentlichung von EXAM 2.0 haben bereits zahlreiche Anwender auf Hersteller- und Zuliefererseite die Möglichkeiten der Open-Source-Bibliotheken genutzt und eigene Beiträge zur Weiterentwicklung geleistet. Diese Tatsache stößt auf großes Interesse, da die von der Bibliothek angesteuerten Tools bei allen Beteiligten flächendeckend im Einsatz sind. Die breite Nutzung erweitert den Funktionsumfang zügig, so dass alle EXAM-Nutzer schnell und kostengünstig von diesen Anwendungen profitieren.

Markus Wiedholz und Christoph Menhorn

: arbeiten bei MicroNova.

(av)

Sie möchten gerne weiterlesen?