CERTIFY C ause
E ffect
G R aph
T ool
I nvented
F or
Y ou

© Copyright 1997-1998 Thomas Biskup. Alle Rechte vorbehalten.
Probleme mit dieser Webseite? Hier gibt es Hilfe... 

Das Problem

Die stetig wachsende Komplexität moderner Softwaresysteme macht es zunehmend erforderlich, Testmuster zur Überprüfung eines Systems automatisch zu generieren bzw. den Testenden durch Werkzeugeinsatz zu unterstützen. Eine Methode, die als sehr effektiv - wenn auch etwas aufwendig - angesehen wird, um Software bzgl. einer vorgegebenen Spezifikation zu testen, ist die Ursache/Wirkungsgraph-Methode (siehe dazu [Mye82, Rot95]). Sie stellt eine Verbesserung der Äquivalenzklassenmethode dar und berücksichtigt insbesondere die Wechselwirkungen verschiedener Eingabewerte.GUI

Die Lösung

Da das Testen mit Ursache/Wirkungsgraphen "von Hand" zu aufwendig ist, um es für Projekte von auch nur mittlerer Größe sinnvoll anwenden zu können, wurde im Rahmen einer Diplomarbeit in [Bis97] ein Werkzeug entwickelt, welches - basierend auf effizienten Algorithmen - in der Lage ist, weite Teile des Testens mit Ursache/Wirkungsgraphen zu automatisieren.
Als Ergebnis der Arbeit ist das Werkzeug CERTIFY entstanden, das es ermöglicht, Ursache/Wirkungsgraphen 
  • entweder unter Verwendung einer graphischen Oberfläche (implementiert mit Perl/Tk) oder mit einer Beschreibungssprache zu modellieren, 
  • auf Konsistenz zu überprüfen, 
  • zu analysieren und minimerte Testfallmengen zu erzeugen. 
Dabei kommen Konzepte zum Tragen, die aus dem Bereich des Hardware-Testens übernommen wurden und an die Anforderungen des Testens von Software angepaßt wurden. Erste Untersuchungen haben ergeben, daß die automatische Testmustergenerierung für kleine bis mittlere Systeme sehr schnell (in Zeiträumen zwischen einigen Sekunden und wenigen Minuten) von statten geht (ein Vorgang, der sonst viele Tage, wenn nicht Wochen, benötigt hat und sehr fehleranfällig war).
Der Kern des Systems - das eigentliche Analysewerkzeug - ist ANSI-konform in C++ implementiert und kommuniziert über betriebssystemunabhängige Schnittstellen mit der Umwelt. Dadurch wird eine einfache Anpassungsmöglichkeit an neue Entwicklungsumgebungen gewährleistet. Anfragen sind willkommen.

Diplomarbeit zur Herunterladen ("Download")

Aufgrund einiger Anfragen gibt's hier nun auch die Diplomarbeit zum Download. Die Diplomarbeit liegt im Postscript-Format vor und wurde mit gzip komprimiert, um Platz und Download-Zeit zu sparen. Anfragen und Kommentare sind natürlich willkommen

Literatur

[Bis97] Biskup, Thomas: Entwicklung eines Werkzeugs zur Generierung von Testmustern aus einer Programmspezifikation unter Verwendung von Ursache/Wirkungsgraphen, Diplomarbeit, Universität Dortmund, Fachbereich Informatik, 1997. 
[Mye82]  Myers, Glenford, J.: The Art of Software Testing, John Wiley & Sons, New York, 1982. 
[Rot95] Rothfelder, M.: Anforderungen anwendbarer Normen für den Test sicherheitsrelevanter Software in der Bahntechnik (Stand der Normung und weiterer Ausblick), Softwaretechnik-Trends, Mitteilungen der Fachgruppen "Software-Engineering" und "Requirements-Engineering" der GI, Band 15, Heft 4, November 1995.