Modeling and Analysi... Examensarbeiten Datenflussbasierte E...

Bachelorarbeit

Analyse und Bewertung von Integrationstestkriterien

 

Zusammenfassung

Die zunehmende Komplexität vieler Software-Produkte stellt eine Herausforderung für das Software Engineering dar. Da Fehler im Programmcode selbst mit größtem Aufwand nicht komplett vermieden werden können, setzt man strukturelle Testverfahren ein, um durch Überdeckung des Codes bzw. der Modelle auf Designebene die Anzahl der Fehler auf ein akzeptables Niveau zu senken. Während für den Komponententest bereits mehrere Werkzeuge existieren, gibt es bisher kaum Unterstützung für die Ebene des Integrationstests.

Zunächst sind bereits existierende Ansätze zur Erfassung der Interaktionen zwischen Software-Komponenten zu identifizieren, zu klassifizieren und auf ihre Eignung hinsichtlich des Integrationstests zu überprüfen. Das umfasst sowohl Kriterien auf Modellebene als auch solche auf Ebene des Programmcodes, wobei bei letzteren auch auf die speziellen Anforderungen objektorientierter Software, wie Vererbung, Polymorphie und dynamisches Binden, zu achten ist. Hierbei sind auch Ansätze einzubeziehen, die auf die Relevanz der einzelnen Komponenten (etwa in Bezug auf Sicherheit) Wert legen. Im Anschluss ist eine Software zu entwerfen, die ein geeignetes Überdeckungskriterium auf Ebene des Programmcodes implementiert. Dabei muss zunächst der Quellcode analysiert und an den entsprechenden Stellen im Code um Aufrufe an eine Logging-Komponente instrumentiert werden. Der instrumentierte Quellcode wird dann von einem Testtreiber ausgeführt und die erreichte Überdeckung als Ergebnis ausgegeben. Der Ansatz ist voraussichtlich für Programme in der Sprache C# zu entwickeln und die Funktionsweise an einigen Beispielen zu illustrieren.

Bearbeiter: Stefan Winzinger

Betreuer: Dr.-Ing. Matthias Meitner