Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gottfried Reichelt Geändert vor über 11 Jahren
1
Prüfung objektorientierter Programme -1
PRÜFUNG zerfällt in zwei Aufgaben Prüfung der Klassen Prüfung des Zusammenspiels der Klassen PRÜFUNG der Klassen umfasst Prüfung der Methoden der Klasse Prüfung der Benutzung von Methoden anderer Klassen Prüfung der geerbten Methoden. PRÜFUNG des Zusammenspiels der Klassen erfordert klare Strukturen zwischen Objekten Vermeidung von Programmiertricks, die Prinzipien der Modellierung missbrauchen.
2
Prüfung von Vererbung STRIKTE VERERBUNG
Objekte der Unterklasse haben sämtliche Merkmale der Oberklasse Es müssen die zur Unterklasse neu hinzugefügten Operationen geprüft werden. NICHT-STRIKTE VERERBUNG Objekte der Unterklasse können Merkmale der Oberklasse nur teilweise übernehmen oder gar verändern. Es müssen die zur Unterklasse neu hinzugefügten und die in der Oberklasse veränderten Operationen überprüft werden. Achtung Oberklasse nicht mehr gekapselt. MEHRFACHVERERBUNG Objekte der Unterklasse können Merkmale aus mehreren Oberklassen übernehmen. Auswirkungen der Mehrfachvererbung oft schwer zu verfolgen. Empfehlung: Verwendung nur zur Vorgabe von Schnittstellen. Dann vererben Oberklassen nur Anforderungen (virtuelle Methoden) und Unterklassen erfüllen Anforderungen der Oberklasse.
3
Prüfung objektorientierter Programme -2
Vorgehen anhand eines Beispiels Architektur des Beispiels D C C1 F B A2 A1 E2 E1 E A x Y X erbt von Y x Y X benutzt Y
4
Prüfung objektorientierter Programme -3
PRÜFUNG - PRINZIP Betrachtet man die Verflechtung von benutzt-Relationen und Vererbung, so ist es sinnvoll, beim Prüfen zuerst die Klassen entlang der benutzt-Relation (top-down), dann die Klassen entlang dem Vererbungspfad zu betrachten. PRÜFUNG - SCHRITTE Reihenfolge: 1. Zuerst werden die von A benutzten Klassen A1und A2 geprüft. 2. Anschließend wird die Klasse A selbst geprüft. 3. Bevor die Klasse B geprüft werden kann, muss die von ihr benutzte Klasse F geprüft sein. Dazu werden a) zuerst die von deren Oberklasse E benutzten Klassen E1 und E2 b) und daraufhin die Klasse E geprüft. 4. Nachdem F geprüft ist, kann B geprüft werden. 5. Nun kann auch D geprüft werden. 6. Die von der Klasse C benutzte Klasse C1 wird als nächste geprüft. 7. Zum Schluss bleibt die Prüfung der Klasse C.
5
Inkrementelles Testen
Inkrementelles Testen: Grundgerüst vorhanden, weitere Komponenten werden stückweise hinzugefügt wie erstellt und testet man Grundgerüst (z.B. Top-Down-Testen mit Depth-First-Strategie) Hinzufügen von Komponenten kann bisherige Testergebnisse entwerten Regressionstest: Systemänderungen (bei Wartung oder inkrementellem Testen) können Fehler in bereits getesteten Funktionen verursachen. Möglichst viele Tests werden automatisiert bei jeder Änderung werden alle vorhandenen Tests durchgeführt neue Testergebnisse werden mit alten Testergebnissen verglichen Achtung: Nur inkrementelles Testen kombiniert mit Regressionstest passt zum inkrementellen und iterativen Softwareentwicklungsprozess des RUP
6
Inkrementelles Testen im Junit Framework
Festlegen der neuen Anforderungen an das System Festlegen der Tests und Implementierung der Testklassen zum Nachweis der Systemverbesserung Erweiterung der Unit Test Suite um die neuen Testklassen Inkrementelle Erweiterung des Systems um neue Klassen, Module oder Komponenten, wobei nach jeder Erweiterung die Testsuite durchlaufen wird Verfahren sehr aufwendig, erleichtert aber Fehlerlokation Verfahren erfordert Unterstützung durch Tools wie das Junit Test Framework (siehe auch Einführungsvideo)
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.