Analyse und Vergleic... Examensarbeiten Automatisches Testen...

Studienarbeit

Bestimmung der Kontroll- und Datenflussüberdeckung beim Integrationstest

 

Zusammenfassung

Die zunehmende Komplexität vieler Softwareprodukte mit hohen Zuverlässigkeitsanforderungen stellt eine Herausforderung für das Software Engineering dar. Da auch mit größtem Aufwand Fehler in der erzeugten Software zu erwarten sind, werden systematische Testverfahren eingesetzt, die die Anzahl der verbliebenen Fehler auf ein tolerierbares Niveau senken sollen. Während für den Komponententest bereits eine große Auswahl an Werkzeugen existiert, die kontroll- und datenflussbasierte Testkriterien unterstützen, gibt es für den code-basierten Integrationstest bisher kaum Werkzeug-Unterstützung.

Zu Beginn der Arbeit sind bereits vorhandene Kriterien für den Integrationstest im Hinblick auf die Eignung für die speziellen Anforderungen objektorientierter Software, wie die Behandlung von Polymorphie und dynamischem Binden, zu untersuchen. Im Anschluss ist eine Softwarekomponente zu entwerfen, die eine automatische Messung des Erfüllungsgrads dieser Kriterien für eine vorgegebene Testfallmenge ermöglicht. Das beinhaltet zunächst die Analyse und anschließende Instrumentierung des Quellcodes mit den entsprechenden Anweisungen an eine Logging-Komponente. Danach wird der instrumentierte Quellcode durch einen zu entwickelnden Testtreiber ausgeführt und schließlich muss aus dem erstellten Logging-Protokoll die erreichte Überdeckung bestimmt werden. Der Ansatz zur Überdeckungsmessung ist für Programme in der Sprache C++ zu entwickeln und an einigen konkreten Beispielen zu illustrieren.

Bearbeiter: Christian Duttine

Betreuer: Dr.-Ing. Matthias Meitner