counter
 
  Objektorientiertes Testen und Testautomatisierung in der Praxis: Konzepte, Techniken und Verfahren | Uwe ...
 
 
Seiteninhalt:
Suche Bücher:   

objektorientiertes t...

Objektorientiertes Testen und Testautomatisierung in der Praxis: Konzepte, Techniken und Verfahren
Uwe Vigenschow

Dpunkt Verlag, 2004 - 348 Seiten

Kundenbewertung:(2 Bewertungen)
großes Bild anzeigen
 weitere Infos, Preis & Bestellmöglichkeit

 



Testen nicht erst am Ende -- Uwe Vigenschow stellt mit Objektorientiertes Testen und Testautomatisierung in der Praxis Testtheorie und -praxis für Softwareprojekte, speziell für die Anforderungen von objektorientierter Software vor. Testautomatisierung für den Beginn, den Verlauf und das Ende eines OO-Projektes.

Eigentlich sollte jeder, doch kaum jemand tut es: Testen, Testen, Testen. Zeit- und Gelddruck, Unwissenheit oder schlichtweg Ignoranz sorgen dafür, dass Fehler zu Beginn, im Verlauf und nach einem Projekt nicht Rechtzeitig gefunden und ausgemerzt werden. Zumindest Unwissenheit und fehlende Methoden kann man nach der Lektüre von Uwe Vigenschows Testanleitungsbuch nicht mehr als Grund für ein gescheitertes Projekt vorschieben.

Mit einem pragmatischen Ansatz fokussiert sich Uwe Vigenschow auf aktuelle Probleme und Herausforderungen im Rahmen einer "Gut-genug-Strategie" und fordert zum Test des Tests in realistischer und konkreter Umgebung auf. Los geht es mit der Klärung der Frage, warum Testen überhaupt notwendig ist. Darauf folgen Verfahren des Softwaretests, die Umsetzung in der Praxis sowie Möglichkeiten und Herausforderungen. Im Anhang ein umfangreiches Verzeichnis mit Beispielen und einem Glossar. Fehler, weitere Informationen und Diskussionen zum Thema findet man dann auf der Website zum Buch unter www.oo.testen.de.

Teilweise nichts Neues, aber definitiv neue Zusammenhänge. Objektorientiertes Testen und Testautomatisierung in der Praxis bringt neuen Wind in eine alte Diskussion. --Wolfgang Treß


 weitere Infos, Preis & Bestellmöglichkeit


Guter Überblick - Kleine Schwächen

Wie mein Vorredner bereits geschrieben hat handelt es sich bei diesem Werk um ein durchaus interessantes Werk zum Thema Qualitätssicherung (QS).
Es richtet sich primär an Software-Entwickler und Projektleiter, "die langfristig die Qualität der Software, die wir schreiben, verbessern wollen". Auch wenn die praktische Umsetzung der Thematik anhand von JUnit, CPPUnit und NUnit gezeigt wird, sollten Einsteiger in die Thematik die mit Testen lediglich JUnit verbinden und schnell lernen möchten wie man Tests schreibt, wohl eher zu einem anderen Buch greifen.
Der Autor möchte den Leser dabei weg von der "Perfektion theoretischer Gedankengerüste" hin zu einer "Gut-Genug-Strategie" führen.

Teil I fokussiert sich auf die grundsätzliche Problematik, die Ursache von Fehlern werden erörtert und wesentliche Begriffe eingeführt / definiert. Er beschränkt sich dabei auf einige wenige Begriffe die zum Verständnis des Buchs nötig sind, dafür sind diese Erläuterungen verständlich und nachvollziehbar.

Im Teil II geht der Autor näher darauf ein was zu testen ist, wie man testen sollte etc. Dabei spielen v.a. die Äquivalenzklassen , sowie die Grenzwert/Extremwert-Analyse eine entscheidende Rolle.
Überdies hinaus hebt er die Bedeutung von Reviews sowie Code Conventions für die QS hervor. Es sind ebenso grundlegende Erläuterungen zur Überdeckungs-Analyse (Pfad/Knotenüberdeckung etc) enthalten.
Allerdings macht sich in diesen Abschnitten die Praxisausrichtung des Buchs bemerkbar, da verschiedene Techniken prinzipiell zwar vorgestellt werden, aber dann nicht näher theoretisch darauf eingegangen wird.
Das Beispiel zum Zustandsraumbasierten Testen ist wiederum gut gewählt und zeigt das prinzipielle Vorgehen.

Das 9 Kapitel war für mich eines der interessantesten aus dem Buch, da hier Lösungen zum Test objektorienter Software vorgestellt wurden. Insbesondere wird auf die Frage eingegangen in welcher Reihenfolge die Tests in objektorientierten Programmen erfolgen sollten, sei es nun bzgl. Assoziationen , Vererbung oder einer Verflechtung von Assoziatonen und Vererbung.
Das Beispiel zur Darstellung der Problematik der Vererbung sollte bekannt sein (Rechteck-Quadrat-Problematik), verdeutlicht aber nochmals die Schwierigkeit des Testprozesses sobald Vererbung im Spiel ist. Überdies wird kurz das Flattening vorgestellt, "um die vererbungsbedingten Problembereite leichter aufspüren zu können".
Darüber hinaus findet sich ein interessanter Abschnitt über Testmuster, in dem auf die Modalitäten von Klassen eingegangen wird, also ob best. Reihenfolge beim Aufruf von Methoden etc. beachtet werden müssen.
Das 10 Kapitel beinhaltet einen Überblick über Lösungen für organisatorische Probleme. Der Leser erhält eine Einführung in das Testgetriebene Design , sowie eine Gegenüberstellung von Wasserfallmodell, V-Modell, sowie dem inkrementell iterativen Vorgehen.

Teil III beschreibt die Umsetzung in die Praxis, insbesondere die praktische Umsetzung des beschriebenen durch JUnit, CPPUnit und NUnit.
Die weiteren Kapitel konzentrieren sich eher auf die Sicht des Projektleiters, durch Beschreibung von Teststrategien, sowie der Fehlerkultur.

Teil IV beinhaltet im wesentlichen eine Gegenüberstellung von UML1.5 und UML2.0 (da in dem Buch häufig UML verwendet wird halte ich dieses kurze Kapitel auch für sinnvoll), sowie ein Kapitel über den Test von Realtime und Embedded Systems.


Wie man an dieser Übersicht erkennen kann liefert das Buch einen Überblick über ein großes Themenspektrum. Vielleicht liegt auch gerade da das Problem.
So ist ein Abschnitt über die Problematik von Rekursion und Nebenläufigkeit sicherlich hochinteressant und ich würde mich über mehr Literatur diesbezüglich freuen, allerdings bezweifle ich den Nutzen eines solchen Abschnitts im Rahmen von 10 Seiten.
Ebenso mag es sicher Leser geben die insbesondere das 15 Kapitel, also "Test von Realtime und Embedded Systems" interessant finden, allerdings hätte ich mir stattdessen an anderen Stellen weiterführende Erläuterungen gewünscht.
Dies ist auch der Grund dafür das es von mir 4 Sterne bekommt.

Alles in allem ein wirklich interessantes Buch. Es liefert einen Überblick über ein großes Themenspektrum und versteht es anhand von zahlreichen Abbildungen diverse Sachverhalte besser darzustellen.
Der Titel ist vielleicht etwas falsch gewählt, da lediglich ein Kapitel genau auf die Problematik von OO-Systemen eingeht.


 weitere Infos, Preis & Bestellmöglichkeit


Praxisbuch zu Test und Qualitätssicherung von Software

Mit diesem Buch liegt ein interessantes Werk zum Thema Qualitätssicherung vor. Dem Autor geht es um ?einfache, wirkungsvolle Verbesserungen im Rahmen unserer täglichen Softwareentwicklung", die einer ?Gut-genug-Strategie" folgen. Er behält dabei immer seine Zielgruppe, die Entwickler, im Auge.

Teil I begründet, warum wir Tests benötigen: Kommunikationsprobleme, unser Gedächtnis, Fachlichkeit und Komplexität der Software. Die kompakte und aktuelle Sammlung von Definitionen rund um die Themen Qualität, Qualitätsmerkmale, Anforderungen, Fehler und Testen sticht besonders hervor.

Teil II behandelt sechs Themenkomplexe: Technisches, Analytik, Methodik und Organisation. Wer auf wenigen Seiten Ideen zur Umsetzung einer Coding Style, eine kompakte Behandlung des Debugging Prozesses sowie der Ableitung von Testfälle für die jeweilige Testart - Unit-Testfälle, Klassenmethoden, Kettentests - und Systemtestfälle unterteilt, sucht, findet dies hier.
Drei Kapitel widmen sich dem Erstellen von Testfällen. Da Entwickler ?Nebenbei"-Tester sind, wirkt die Vielzahl an Testmethoden abschreckend. Der Autor beschreibt die wesentlichen Testmethoden - Grenz-/Extremwerte, Äquivalenzklassen, Pfad-/Bedingungstests, Rekursion, Nebenläufigkeit, zustandsraumbasiertes Testen - anhand kurzer, prägnanter Beispiele. Die ?Testtechnik" Codereviews, als asynchrones Pair Programming bezeichnet, wird mit pragmatischen Durchführungshinweisen vorgestellt.
Das Kapitel zum Test objektorientierter Software behandelt die Reihenfolge der Tests in der Hierarchie, den Umfang von Vererbungstests (?Flattening"), sieben typische Vererbungsfehler und drei Testmuster nach Binder - Modale Klassen, modale Hierarchie, nicht-modaler polymorpher Server. Eine schlüssig aufbereitete Anleitung zur Priorisierung von Tests für spezielle Klassenarten auf Basis der Designleitlinie Entity-Control-Boundary (ECB) rundet das Thema ab.
Zur Lösung organisatorischer Probleme stellt der Autor Wasserfall- und V-Modell, die Prinzipien des eXtreme Programming und das inkrementell-iterative Vorgehen gegenüber. Sehr praktikabel ist der Vorschlag der Verbindung von V-Modell und inkrementell-iterativem Vorgehen ?Innen inkrementell-iterativ, außen V-Modell". In weiterer Folge werden testgetriebenes Design und Refactoring vorgestellt, wobei automatisierte Tests die Basis für erfolgreiches Refactoring liefern. Aufschlussreich sind die Argumente, testgetriebenes Vorgehen auch unter Zeitdruck beizubehalten, die anhand zweier positiver ?Feldversuche" begründet werden.

Teil III stellt das Konzept der xUnit-Familie mit Beispielen anhand von JUnit, CppUnit und NUnit (JUnit unter .NET) vor. Auf ein wesentliches Element zur erfolgreichen Implementierung von Unit-Tests wird intensiver eingegangen, die Stellvertreterobjekte - Stub, Dummy, Mock.
Das Plädoyer für ein ?mittelmäßiges, eher pragmatisches QS-Konzept das erfolgreich umgesetzt von deutlich größerem praktischen Nutzen ist, als ein optimiertes Konzept, dessen Umsetzung nicht gelingt." und die Entwicklung einer pragmatischen Entwicklertest-Strategie mit Verweis auf die im Buch behandelten Themen sind gelungen. Besonders lesenswert sind die Ausführungen zur ?Fehlerkultur": Nur eine sachliche, ergebnisorientierte Atmosphäre führt zum Erfolg, daher ist das Fördern einer konstruktiven Fehlerkultur ?aus Fehlern lernen" für die kreative Entwicklung von Lösungen entscheidend.

Teil IV liefert vertiefende Anregungen zum ?Test von Realtime und Embedded Systems" und eine Gegenüberstellung von ?UML 1.5 vs. UML2".

Der Anhang enthält alle Beispiele, 37 objektorientierte Testmuster, Glossar, Abbildungs-, Tabellen- und ein exzellenten Literaturverzeichnis zum Thema Testen.

Resümee
Ein sehr gelungenes Buch, in erster Linie für Entwickler geschrieben, bietet es aber auch für langjährige Qualitätssicherer und Tester eine Fülle an Informationen, Gedanken und Anregungen für die Praxis.


 weitere Infos, Preis & Bestellmöglichkeit



Folgende Artikel könnten Sie interessieren




objektorientiertes


Java lernen mit BlueJ: Eine Einführung in die objektorientierte ...
C++: Objektorientiertes Programmieren von Anfang an
C++ für Dummies (Fur Dummies)
Objektorientierte Softwareentwicklung. Analyse und Design mit UML 2.1
ABAP Objects: ABAP-Programmierung mit SAP NetWeaver



techniken


Zeichnen. Die neue große Schule: Grundlagen. Techniken. Motive
Medialität und Hellsichtigkeit - Das Übungsbuch: Techniken zum ...
Scott Kelbys Glorreiche 7: 7 Techniken, die alle Bilder zum Leuchten ...
Torwege zum Jetzt. CD: Die drei Techniken zu höherem Bewusstsein
Impact-Techniken für die Psychotherapie



verfahren


Die wundersame Leber & Gallenblasenreinigung. Ein kraftvolles ...
Ätherische Öle selbst herstellen
Psychiatrie und Psychotherapie für Heilpraktiker
Die Kunst des Schröpfens: Grundlagen, Durchführung, natürliche ...
Imagination als heilsame Kraft. Zur Behandlung von Traumafolgen mit ...



Suche nach Büchern
konzepte, objektorientiertes, praxis, techniken, testautomatisierung, verfahren


aktuelle Kategorie: Bücher
Bücher
Zeitschriften
Elektronik
Kamera und Foto
Computer Hardware
moderne Musik
klassische Musik
DVD
VHS Video
Software
PC- und Videospiele
Spielwaren
Heimwerken
Küche und Haushalt
Garten und Freizeit
Bad und Körperpflege





zufällig ausgewählt


Musik: Music from the Center for Contemporary Music at Mills College [US-Import]