Winter / Ekssir-Monfared / Sneed | Der Integrationstest | E-Book | sack.de
E-Book

E-Book, Deutsch, 434 Seiten

Winter / Ekssir-Monfared / Sneed Der Integrationstest

Von Entwurf und Architektur zur Komponenten- und Systemintegration
1. Auflage 2012
ISBN: 978-3-446-42951-2
Verlag: Hanser, Carl
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)

Von Entwurf und Architektur zur Komponenten- und Systemintegration

E-Book, Deutsch, 434 Seiten

ISBN: 978-3-446-42951-2
Verlag: Hanser, Carl
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)



DER INTEGRATIONSTEST //- Integrationsstufen- Integrationstestprozess- Integrationstests auf verschiedenen Ebenen- Mögliche Fehlerarten beim Integrationstest und Fallbeispiele aus der PraxisDer Integrationstest wird in der Literatur bisher immer stiefmütterlich behandelt. Dabei kommt ihm einerseits in der Praxis der Softwaretester eine große Bedeutung zu, andererseits ist aber dieses Verbindungsstück zwischen Komponententest und Systemtest für viele Entwickler und Tester unbekanntes Terrain. In diesem Buch lernen Sie den Integrationstest und seine unterschiedlichen Zwischenstufen von Memberintegration, Klassen- bzw. Modulintegration über die Komponenten- und Teilsystemintegration bis hin zur Systemintegration fundiert kennen. Für jede dieser Integrationsstufen stellt das Buch praxiserprobte Testverfahren und Testwerkzeuge vor und erläutert sie an realen Praxisbeispielen. Jeweils ein Abschnitt des Buches ist den unterschiedlichen, in der Praxis verbreiteten Systemarchitekturen gewidmet, wie z.B. strikte und nicht-strikte Schichtenarchitekturen, Client/Server sowie SOA. Deren Vor- und Nachteile hinsichtlich des Integrationstests werden erläutert und die zugrundeliegenden Plattformen bzw. Technologien werden charakterisiert.AUS DEM INHALT:Grundlagen zum Integrationstest // Software-Abhängigkeiten // Integrationsfehlerarten // Integrationsstufen // Integrationsstrategien // Integrationstestprozess // Funktions- und wertebezogene Testverfahren // Ablaufbezogene Testverfahren // Fehlerbezogene und heuristische Testverfahren // Nicht-Funktionale Integrationstests // Integrationstestumgebung // Integrationstestautomation
Winter / Ekssir-Monfared / Sneed Der Integrationstest jetzt bestellen!

Weitere Infos & Material


1;Geleitwort;18
2;Vorwort;22
3;Danksagung;24
4;Die Autoren;26
5;Teil I: Einstieg und Grundlagen;30
5.1;1 Einleitung;32
5.1.1;1.1 Worum geht es?;32
5.1.2;1.2 Integrationstest in der heutigen Praxis;34
5.1.3;1.3 Eine kleine Geschichte;36
5.1.4;1.4 Integrationstest und Software-Qualität;38
5.1.5;1.5 Für wen ist dieses Buch geschrieben?;38
5.2;2 Einführendes Fallbeispiel;42
5.2.1;2.1 Das alte Auftragsbearbeitungssystem;44
5.2.2;2.2 Das neue Auftragsbearbeitungssystem;46
5.2.3;2.3 Integrationstest der Auftragsbearbeitung;50
5.2.3.1;2.3.1 Klassenintegrationstest;50
5.2.3.2;2.3.2 Komponentenintegrationstest;51
5.2.3.3;2.3.3 Systemintegrationstest;58
5.2.4;2.4 Resümee;60
5.3;3 Grundlegendes zum Softwaretest;62
5.3.1;3.1 Was ist Testen?;62
5.3.2;3.2 Black-Box-Verfahren;65
5.3.2.1;3.2.1 Äquivalenzklassentest;65
5.3.2.2;3.2.2 Grenzwertanalyse;65
5.3.3;3.3 White-Box-Verfahren;66
5.3.3.1;3.3.1 Kontrollflussbasierter Test;66
5.3.3.2;3.3.2 Datenflussbasierter Test;66
5.3.3.3;3.3.3 Bedingungstest;67
5.3.4;3.4 Wie gut ist der Test?;67
5.3.4.1;3.4.1 Messung der Testüberdeckung;68
5.3.4.2;3.4.2 Mutationstests;69
5.3.5;3.5 Teststufen;69
5.3.5.1;3.5.1 Modul- bzw. Komponententest;70
5.3.5.2;3.5.2 Integrationstest;70
5.3.5.3;3.5.3 Systemtest;70
5.3.5.4;3.5.4 Abnahmetest;71
5.3.6;3.6 Testausführung und Testumgebung;71
5.3.7;3.7 Testprozess;72
5.4;4 Grundlagen des Integrationstests;74
5.4.1;4.1 Was ist Integration?;74
5.4.2;4.2 Bausteine der Integration;75
5.4.3;4.3 Abhängigkeiten;78
5.4.3.1;4.3.1 Elementare Bausteine;78
5.4.3.2;4.3.2 Zusammengesetzte Bausteine;79
5.4.3.3;4.3.3 Semantische und syntaktische Abhängigkeiten;79
5.4.4;4.4 Ziele, Fokus und pragmatische Definition des Integrationstests;80
5.4.5;4.5 Stufen der Integration;82
5.4.6;4.6 Vorgehen im Integrationstest;83
5.5;5 Modellierung im Integrationstest;86
5.5.1;5.1 Strukturmodellierung;86
5.5.1.1;5.1.1 Objekte;87
5.5.1.2;5.1.2 Klassen;88
5.5.1.3;5.1.3 Pakete und Komponenten;92
5.5.1.4;5.1.4 Physikalische Struktur und Deployment;94
5.5.2;5.2 Verhaltensmodellierung;94
5.5.2.1;5.2.1 Anwendungsfälle;95
5.5.2.2;5.2.2 Aktivitäten;96
5.5.2.3;5.2.3 Interaktionen;97
5.5.2.4;5.2.4 Zustände und reaktives Verhalten;99
5.5.3;5.3 Graphentheorie;102
5.5.3.1;5.3.1 Grundlegende Begriffe;103
5.5.3.2;5.3.2 Abhängigkeitsgraphen;104
5.5.3.3;5.3.3 Pfade und Graph-Matrizen;104
5.5.3.4;5.3.4 Gerichtete azyklische Graphen;106
5.5.3.5;5.3.5 Kontrollfluss- und Datenflussgraphen;107
5.6;6 Software-Abhängigkeiten;110
5.6.1;6.1 Syntaktische Abhängigkeiten;110
5.6.1.1;6.1.1 Sichtbarkeiten und Schnittstellen;111
5.6.1.2;6.1.2 Bausteine als Typen;111
5.6.2;6.2 Interaktionsabhängigkeiten;112
5.6.2.1;6.2.1 Zugriffe auf Variablen;112
5.6.2.2;6.2.2 Operationsaufrufe;112
5.6.2.3;6.2.3 Nutzung von Operationsparametern;113
5.6.2.4;6.2.4 Verträge zwischen Bausteinen;114
5.6.2.5;6.2.5 Entfernte Prozeduraufrufe;116
5.6.2.6;6.2.6 Nachrichtenbasierte Kommunikation;118
5.6.2.7;6.2.7 Ereignisbasierte Kommunikation;118
5.6.3;6.3 Vererbungsabhängigkeiten;119
5.6.3.1;6.3.1 Generalisierung, Substituierbarkeit und Polymorphismus;119
5.6.3.2;6.3.2 Generalisierung und Schnittstellen;119
5.6.3.3;6.3.3 Horizontale und vertikale Abhängigkeiten;120
5.6.4;6.4 Indirekte Abhängigkeiten;120
5.6.4.1;6.4.1 Datenorientierte Abhängigkeiten;121
5.6.4.2;6.4.2 Dienstorientierte Abhängigkeiten;122
5.6.4.3;6.4.3 Natürlichsprachliche Kommunikation und REST-Abhängigkeiten;123
5.7;7 Integrationsfehlerarten;126
5.7.1;7.1 Fehler und Abhängigkeiten;127
5.7.1.1;7.1.1 Interaktionsfehler;127
5.7.1.2;7.1.2 Vererbungsfehler;130
5.7.1.3;7.1.3 Fehler bei indirekten Abhängigkeiten;131
5.7.2;7.2 Übersicht der Integrationsfehler;132
5.7.3;7.3 Fehler in der Integration innerhalb einer Anwendung;133
5.7.3.1;7.3.1 Member-Integrationsfehler;133
5.7.3.2;7.3.2 Modulintegrationsfehler;133
5.7.3.3;7.3.3 Klassenintegrationsfehler;135
5.7.3.4;7.3.4 Komponenten- und Teilsystemintegrationsfehler;136
5.7.4;7.4 Fehler in der Integration mehrerer Anwendungen;138
5.7.4.1;7.4.1 Anwendungsintegration;138
5.7.4.2;7.4.2 Fehler in der Unternehmensintegration;140
5.7.5;7.5 Fehlerursachen;141
5.7.5.1;7.51 Unterschiedliche Schnittstellenbeschreibungen;142
5.7.5.2;7.5.2 Unterschiedliche Schnittstellenversionen;142
5.7.5.3;7.5.3 Unterschiedliche Wertebereiche;143
5.7.5.4;7.5.4 Unterschiedliche Dateninterpretation;143
5.7.5.5;7.5.5 Fehlende Synchronisierung;143
5.7.5.6;7.5.6 Zeitliche Abhängigkeiten;143
5.7.6;7.6 Datenbankfehler;144
5.7.7;7.7 Integrationsfehlerverteilung;145
5.8;8 Fallstudien zum Integrationstest;148
5.8.1;8.1 Wertpapierabwicklungssystem;148
5.8.1.1;8.1.1 Aufteilung des Systems in Teilsysteme;149
5.8.1.2;8.1.2 Integration der Teilsysteme;150
5.8.1.3;8.1.3 Test der Batch-Prozesse;151
5.8.1.4;8.1.4 End-to-End-Test;151
5.8.1.5;8.1.5 Gesamtsystemtest;151
5.8.1.6;8.1.6 Zusammenfassung;152
5.8.2;8.2 Gebühreneinzugssystem;152
5.8.2.1;8.2.1 Risikobasierter Testansatz;154
5.8.2.2;8.2.2 Problem des Korrektheitsnachweis;154
5.8.2.3;8.2.3 Selektiver Regressionstest;155
5.8.2.4;8.2.4 Integrationstest versus Teilsystemtest;156
5.8.2.5;8.2.5 Rückschlüsse;156
5.8.3;8.3 Verteilte Web-Anwendungen;157
5.8.3.1;8.3.1 Test der Teilsysteminteraktionen;157
5.8.3.2;8.3.2 Zweistufentest – Schnittstellen und Interaktionen;158
5.8.3.3;8.3.3 Erkenntnisse aus dem Integrationstest;159
5.8.4;8.4 Gekapselte Web Services;159
5.8.4.1;8.4.1 Test der Client-Prozesse;160
5.8.4.2;8.4.2 Test der Web Services;160
5.8.4.3;8.4.3 Test der Client-Prozesse mit den Web Services;161
5.8.4.4;8.4.4 Abgrenzung zwischen Integrations- und Systemtest;161
5.8.5;8.5 Integrationstest von Software-Messwerkzeugen;162
5.8.6;8.6 Zusammenfassung der Fallstudien;164
6;Teil II: Strategie, Prozess und Techniken;166
6.1;9 Integrationsstufen;168
6.1.1;9.1 Member-Integrationstest;169
6.1.1.1;9.1.1 Zielsetzung;169
6.1.1.2;9.1.2 Testbasis und Testobjekte;169
6.1.1.3;9.1.3 Durchführung;169
6.1.1.4;9.1.4 Überdeckungsmaße und Endekriterien;170
6.1.1.5;9.1.5 Ergebnis;171
6.1.1.6;9.1.6 Hinweise und Empfehlungen;171
6.1.2;9.2 Klassen- bzw. Modulintegrationstest;172
6.1.2.1;9.2.1 Zielsetzung;172
6.1.2.2;9.2.2 Testbasis und Testobjekte;172
6.1.2.3;9.2.3 Durchführung;173
6.1.2.4;9.2.4 Überdeckungsmaße und Endekriterien;174
6.1.2.5;9.2.5 Ergebnis;174
6.1.2.6;9.2.6 Hinweise und Empfehlungen;174
6.1.3;9.3 Komponenten- bzw. Teilsystemintegrationstest;175
6.1.3.1;9.3.1 Zielsetzung;175
6.1.3.2;9.3.2 Testbasis und Testobjekte;176
6.1.3.3;9.3.3 Durchführung;176
6.1.3.4;9.3.4 Überdeckungsmaße und Endekriterien;177
6.1.3.5;9.3.5 Ergebnis;177
6.1.3.6;9.3.6 Hinweise und Empfehlungen;177
6.1.4;9.4 Systemintegrationstest;178
6.1.4.1;9.4.1 Zielsetzung;178
6.1.4.2;9.4.2 Testbasis und Testobjekte;179
6.1.4.3;9.4.3 Durchführung;180
6.1.4.4;9.4.4 Überdeckungsmaße und Endekriterien;181
6.1.4.5;9.4.5 Ergebnis;181
6.1.4.6;9.4.6 Hinweise und Empfehlungen;181
6.1.5;9.5 Erweitertes V-Modell für Anwendungslandschaften: Das V-Modell++;182
6.1.5.1;9.5.1 Anmerkungen zum Systemintegrationstest;183
6.1.5.2;9.5.2 Multisystemtest;184
6.1.5.3;9.5.3 Multisystemabnahmetest;184
6.2;10 Integrationsstrategien;186
6.2.1;10.1 Integration der Bausteine einer Anwendung;186
6.2.1.1;10.1.1 Grundlagen;187
6.2.1.2;10.1.2 Schrittweise Integration mit Stubs und Treibern;187
6.2.1.3;10.1.3 Abhängigkeitszyklen;190
6.2.2;10.2 Strukturabhängige Strategien;190
6.2.2.1;10.2.1 Strategien für hierarchische Bausteinstrukturen;190
6.2.2.2;10.2.2 Top-Down-Strategie;192
6.2.2.3;10.2.3 Bottom-Up-Strategie;192
6.2.2.4;10.2.4 Sandwich-Strategie;192
6.2.3;10.3 Strukturunabhängige Strategien;193
6.2.3.1;10.3.1 Ad-hoc-Strategie;193
6.2.3.2;10.3.2 Strategie der kritischen Bausteine;194
6.2.3.3;10.3.3 Strategie der kritischen Abhängigkeiten;194
6.2.3.4;10.3.4 Anwendungsfallbasierte Strategie;195
6.2.3.5;10.3.5 Thread-basierte Integration;196
6.2.4;10.4 Individuelle Strategien;197
6.2.4.1;10.4.1 Strategie der Clusterbildung;198
6.2.4.2;10.4.2 Heuristische Ansätze;199
6.2.4.3;10.4.3 Graphenbasierte Ansätze mit Zyklenauflösung;200
6.2.5;10.5 Objektorientierte Strategien;201
6.2.5.1;10.5.1 Vererbungsbezogene Ansätze;202
6.2.5.2;10.5.2 Vererbungs- und interaktionsbezogene Ansätze;203
6.2.6;10.6 Einflussfaktoren für die Integrationsstrategie;203
6.2.6.1;10.6.1 Faktoren des Projektumfelds;204
6.2.6.2;10.6.2 Faktoren des Testumfeldes;205
6.2.6.3;10.6.3 Faktoren der Architektur und des Entwurfs;206
6.2.6.4;10.6.4 Allgemeine Faktoren;207
6.2.6.5;10.6.5 Auswahl der Strategie;208
6.2.7;10.7 Integration mehrerer Anwendungen;208
6.2.7.1;10.7.1 Interaktionsbasierte Systemintegration;209
6.2.7.2;10.7.2 Frontend-Integration;210
6.2.7.3;10.7.3 Backend-Integration;212
6.2.7.4;10.7.4 Dienstbasierte Integration;214
6.3;11 Integrationstestprozess;216
6.3.1;11.1 Der fundamentale Testprozess;216
6.3.1.1;11.1.1 Rollen;217
6.3.1.2;11.1.2 Testplanung und Steuerung;218
6.3.1.3;11.1.3 Testanalyse und Testentwurf;218
6.3.1.4;11.1.4 Testrealisierung und Testdurchführung;219
6.3.1.5;11.1.5 Bewertung von Ausgangskriterien und Bericht;220
6.3.1.6;11.1.6 Abschluss der Testaktivitäten;221
6.3.2;11.2 Rollen im Integrationstestprozess;221
6.3.2.1;11.2.1 Integrationstestmanager;222
6.3.2.2;11.2.2 Integrationstestdesigner;223
6.3.2.3;11.2.3 Integrationstester;223
6.3.3;11.3 Aktivitäten im Integrationstestprozess;224
6.3.3.1;11.3.1 Testplanung und Steuerung;224
6.3.3.2;11.3.2 Testanalyse und Testentwurf;225
6.3.3.3;11.3.3 Testrealisierung und Testdurchführung;227
6.3.3.4;11.3.4 Auswertung, Bericht und Abschluss;228
6.3.4;11.4 Integrationsteststufenspezifische Besonderheiten;229
6.3.4.1;11.4.1 Member-Integrationstest;229
6.3.4.2;11.4.2 Klassen- bzw. Modulintegrationstest;230
6.3.4.3;11.4.3 Komponentenintegrationstest;230
6.3.5;11.5 Einbindung in den Entwicklungsprozess;231
6.3.5.1;11.5.1 Wasserfallmodell;231
6.3.5.2;11.5.2 V-Modell;231
6.3.5.3;11.5.3 Inkrementelle/Iterative Entwicklung;233
6.3.5.4;11.5.4 Agile Vorgehensweisen;234
6.3.6;11.6 Besonderheiten im System­integrationstest;237
6.3.6.1;11.6.1 Planung und Steuerung;237
6.3.6.2;11.6.2 Analyse und Entwurf;239
6.3.6.3;11.6.3 Realisierung und Durchführung;241
6.3.6.4;11.6.4 Durchführung und Protokollierung;242
6.3.6.5;11.6.5 Bewertung und Bericht;243
6.3.6.6;11.6.6 Abschluss;244
6.3.6.7;11.6.7 Systemabhängigkeiten und Einführung von Release-Management;245
6.4;12 Statische Analysen;246
6.4.1;12.1 Schnittstellenarten;246
6.4.1.1;12.1.1 Unstrukturierte Datenübergabe;247
6.4.1.2;12.1.2 Gemeinsame globale Datenbereiche;247
6.4.1.3;12.1.3 Operationsaufrufe und Parameter;248
6.4.1.4;12.1.4 Dateien;248
6.4.1.5;12.1.5 Datenbanken;248
6.4.1.6;12.1.6 Nachrichten in verteilten Systemen;249
6.4.1.7;12.1.7 Schnittstellendefinitionssprachen;250
6.4.1.8;12.1.8 Extended Markup Language (XML);251
6.4.1.9;12.1.9 Web Service Definition Language (WSDL);252
6.4.1.10;12.1.10 Structured Query Language (SQL);253
6.4.2;12.2 Ansätze zur statischen Analyse der Schnittstellen;254
6.4.2.1;12.2.1 Reviews der Schnittstellen;255
6.4.2.2;12.2.2 Inspektionen der Schnittstellen;256
6.4.2.3;12.2.3 Automatisierte Schnittstellenprüfung;256
6.4.2.4;12.2.4 Automatisierter Abgleich der Schnittstellen;257
6.4.3;12.3 Voraussetzungen für eine statische Schnittstellenanalyse;258
6.4.3.1;12.3.1 Prüfbarkeit der Schnittstellendefinitionen;258
6.4.3.2;12.3.2 Lesbarkeit der Schnittstellendefinitionen;259
6.4.3.3;12.3.3 Verifizierbarkeit der Schnittstellen;259
6.4.4;12.4 Werkzeuge für die statische Analyse von Schnittstellen;261
6.4.4.1;12.4.1 Schnittstellenprüfer;261
6.4.4.2;12.4.2 Schnittstellenvermesser;261
6.4.4.3;12.4.3 Schnittstellengenerator;263
6.4.4.4;12.4.4 Schnittstellenvalidator;264
6.4.5;12.5 Erfahrung mit der statischen Analyse von Schnittstellen;264
6.4.5.1;12.5.1 IDL-Analyse;265
6.4.5.2;12.5.2 XML-Analyse;266
6.4.5.3;12.5.3 WSDL-Analyse;267
6.5;13 Funktions- und wertebezogene Testentwurfsverfahren;270
6.5.1;13.1 Anwendungsfallbasiertes Testen;270
6.5.1.1;13.1.1 Testziele;271
6.5.1.2;13.1.2 Voraussetzungen;271
6.5.1.3;13.1.3 Vorgehen;271
6.5.1.4;13.1.4 Aufdeckbare Fehler;273
6.5.1.5;13.1.5 Integrationsteststufen;274
6.5.1.6;13.1.6 Bekannte Einschränkungen und Probleme;274
6.5.2;13.2 End-to-End-Testen;274
6.5.2.1;13.2.1 Testziele;275
6.5.2.2;13.2.2 Voraussetzungen;275
6.5.2.3;13.2.3 Vorgehen;275
6.5.2.4;13.2.4 Aufdeckbare Fehler;276
6.5.2.5;13.2.5 Integrationsteststufen;276
6.5.2.6;13.2.6 Bekannte Einschränkungen und Probleme;276
6.5.3;13.3 Parameterbasiertes Testen;277
6.5.3.1;13.3.1 Testziele;277
6.5.3.2;13.3.2 Voraussetzungen;277
6.5.3.3;13.3.3 Vorgehen;277
6.5.3.4;13.3.4 Aufdeckbare Fehler;280
6.5.3.5;13.3.5 Integrationsteststufen;281
6.5.3.6;13.3.6 Bekannte Einschränkungen und Probleme;281
6.5.4;13.4 Zustandsbasiertes Testen;281
6.5.4.1;13.4.1 Testziele;281
6.5.4.2;13.4.2 Voraussetzungen;283
6.5.4.3;13.4.3 Vorgehen;283
6.5.4.4;13.4.4 Aufdeckbare Fehler und Überdeckungskriterien;289
6.5.4.5;13.4.5 Anwendbare Teststufen;290
6.5.4.6;13.4.6 Einschränkungen und Probleme;290
6.5.5;13.5 Assoziationsbasiertes Testen;291
6.5.5.1;13.5.1 Testziele;291
6.5.5.2;13.5.2 Voraussetzungen;292
6.5.5.3;13.5.3 Vorgehen;292
6.5.5.4;13.5.4 Aufdeckbare Fehler und Überdeckungskriterien;295
6.5.5.5;13.5.5 Anwendbare Teststufen;296
6.5.5.6;13.5.6 Einschränkungen und Probleme;296
6.5.6;13.6 Generalisierungsbasiertes und paarweises Testen;296
6.5.6.1;13.6.1 Testziele;297
6.5.6.2;13.6.2 Voraussetzungen;297
6.5.6.3;13.6.3 Vorgehen;297
6.5.6.4;13.6.4 Aufdeckbare Fehler und Überdeckungskriterien;303
6.5.6.5;13.6.5 Anwendbare Teststufen;303
6.5.6.6;13.6.6 Einschränkungen und Probleme;303
6.6;14 Ablaufbezogene Testentwurfsverfahren;306
6.6.1;14.1 Überblick;306
6.6.2;14.2 Kontrollflussbasiertes Testen;308
6.6.2.1;14.2.1 Testziele;308
6.6.2.2;14.2.2 Voraussetzungen;309
6.6.2.3;14.2.3 Vorgehen;309
6.6.2.4;14.2.4 Aufdeckbare Fehler und Überdeckungskriterien;315
6.6.2.5;14.2.5 Anwendbare Teststufen;317
6.6.2.6;14.2.6 Einschränkungen und Probleme;318
6.6.3;14.3 Datenflussbasiertes Testen;319
6.6.3.1;14.3.1 Testziele;319
6.6.3.2;14.3.2 Voraussetzungen;319
6.6.3.3;14.3.3 Vorgehen;320
6.6.3.4;14.3.4 Aufdeckbare Fehler und Überdeckungskriterien;325
6.6.3.5;14.3.5 Anwendbare Teststufen;326
6.6.3.6;14.3.6 Einschränkungen und Probleme;327
6.6.4;14.4 Interaktionsbasiertes Testen;328
6.6.4.1;14.4.1 Testziele;328
6.6.4.2;14.4.2 Voraussetzungen;328
6.6.4.3;14.4.3 Vorgehen;328
6.6.4.4;14.4.4 Aufdeckbare Fehler und Überdeckungskriterien;332
6.6.4.5;14.4.5 Anwendbare Teststufen;333
6.7;15 Fehlerbezogene, erfahrungsbasierte und weitere Testentwurfsverfahren;334
6.7.1;15.1 Fehlerbezogenes Testen;334
6.7.1.1;15.1.1 Testziele;334
6.7.1.2;15.1.2 Voraussetzungen;334
6.7.1.3;15.1.3 Vorgehen;335
6.7.1.4;15.1.4 Aufdeckbare Fehler;336
6.7.1.5;15.1.5 Integrationsteststufen;336
6.7.1.6;15.1.6 Einschränkungen und Probleme;336
6.7.2;15.2 Exploratives Testen;336
6.7.2.1;15.2.1 Testziele;336
6.7.2.2;15.2.2 Voraussetzungen;336
6.7.2.3;15.2.3 Vorgehen;337
6.7.2.4;14.2.4 Aufdeckbare Fehler;338
6.7.2.5;14.2.5 Integrationsteststufen;338
6.7.2.6;14.2.6 Einschränkungen und Probleme;338
6.7.3;14.3 Weitere Testentwurfsverfahren;338
6.8;16 Nicht-funktionale Integrationstests;340
6.8.1;16.1 Test gegen die Qualitätsmerkmale;340
6.8.2;16.2 Innere und äußere Qualitätsmerkmale;341
6.8.3;16.3 Sicherheitstest;342
6.8.3.1;16.3.1 Funktionaler Sicherheitstest;342
6.8.3.2;16.3.2 Technischer Sicherheitstest;343
6.8.3.3;16.3.3 Vorgehensweise;344
6.8.4;16.4 Zeit- und Verbrauchsverhalten;345
6.8.4.1;16.4.1 Last- und Performanztest;345
6.8.4.2;16.4.2 Vorgehensweise;346
6.8.4.3;16.4.3 Lasterzeugung und Toolauswahl;348
6.8.4.4;16.4.4 Ziele des Last- und Performanztests;348
6.8.5;16.5 Integrationstest verteilter Systeme;350
6.8.5.1;16.5.1 Validierungspunkte in verteilten Systemen;350
6.8.5.2;16.5.2 Nebenläufigkeits- und Synchronisierungstests;351
7;Teil III: Realisierung und Praxis;354
7.1;17 Integrationstestumgebung;356
7.1.1;17.1 Definition der Testumgebung;356
7.1.2;17.2 Zweck der Testumgebung;357
7.1.3;17.3 Bedeutung der Testumgebung für den Integrationstest;358
7.1.4;17.4 Managementprozesse für die Testumgebung;359
7.1.5;17.5 Planung und Management der Testumgebung;361
7.1.6;17.6 Aufwandschätzung für die Testumgebung;361
7.1.7;17.7 Big Picture = Systemstadtplan;362
7.1.8;17.8 Testinfrastrukturplan;363
7.1.9;17.9 Beschaffung von Hardware;364
7.1.10;17.10 Systeminstallations- und -konfigurationsplan;365
7.1.11;17.11 Simulatoren und Emulatoren;365
7.1.12;17.12 Stubs und Mock-Objekte;366
7.1.13;17.13 Testtreiber und Monitore;367
7.1.13.1;17.13.1 Beobachtungs- und Steuerungspunkte;368
7.1.14;17.14 Testwerkzeuge;369
7.1.15;17.15 Testdaten;370
7.1.16;17.16 Verantwortlichkeiten;371
7.1.17;17.17 Release-Management;372
7.1.18;17.18 Testumgebung für Maintenance und Support;373
7.1.19;17.19 Abbau der Testumgebung;373
7.1.20;17.20 Dokumentation;374
7.2;18 Integrationstestautomation und dynamische Analysen;376
7.2.1;18.1 Überblick;376
7.2.2;18.2 Automatisierung der Schnittstellenanalyse;378
7.2.2.1;18.2.1 Zweck eines Schnittstellenanalysators;378
7.2.2.2;18.2.2 Funktionalität eines Schnittstellenanalysators;379
7.2.2.3;18.2.3 Voraussetzungen für einen Schnittstellenanalysator;379
7.2.2.4;18.2.4 Ergebnisse eines Schnittstellenanalysators;380
7.2.3;18.3 Automatisierte Ermittlung von Integrationstestfällen;380
7.2.3.1;18.3.1 Zweck eines Testfallgenerators;381
7.2.3.2;18.3.2 Funktionalität eines Testfallgenerators;381
7.2.3.3;18.3.3 Voraussetzungen für die Testfallerstellung;382
7.2.3.4;18.3.4 Ergebnisse eines Testfallgenerators;382
7.2.4;18.4 Automatisierte Generierung von Schnittstellendaten;382
7.2.4.1;18.4.1 Zweck eines Schnittstellengenerators;384
7.2.4.2;18.4.2 Funktionalität eines Schnittstellengenerators;384
7.2.4.3;18.4.3 Voraussetzungen für die Schnittstellengenerierung;384
7.2.4.4;18.4.4 Ergebnisse eines Schnittstellengenerators;385
7.2.5;18.5 Testtreiber für die Steuerung des Integrationstests;385
7.2.5.1;18.5.1 Zweck eines Testtreibers;386
7.2.5.2;18.5.2 Funktionalität eines Testtreibers;386
7.2.5.3;18.5.3 Voraussetzungen für die Integrationstestausführung;387
7.2.5.4;18.5.4 Ergebnisse der Integrationstestausführung;387
7.2.6;18.6 Dynamische Analyse der Schnittstellennutzung;387
7.2.6.1;18.6.1 Zweck eines Schnittstellenvalidators;389
7.2.6.2;18.6.2 Funktionalität eines Schnittstellenvalidators;389
7.2.6.3;18.6.3 Voraussetzungen für die Schnittstellenvalidation;390
7.2.6.4;18.6.4 Ergebnisse der Schnittstellenvalidation;390
7.2.7;18.7 Dynamische Analyse der Integrationstestabläufe;391
7.2.7.1;18.7.1 Zweck eines Ablaufverfolgungswerkzeugs;392
7.2.7.2;18.7.2 Funktionalität eines Ablaufverfolgungswerkzeugs;393
7.2.7.3;18.7.3 Voraussetzungen für die Testablaufverfolgung;393
7.2.7.4;18.7.4 Ergebnisse der Testablaufverfolgung;394
7.2.8;18.8 Werkzeuge für das Integrationstestmanagement;394
7.2.8.1;18.8.1 Zweck eines Teststeuerungspults;396
7.2.8.2;18.8.2 Funktionalität des Teststeuerungspults;397
7.2.8.3;18.8.3 Voraussetzungen für das Teststeuerungspult;398
7.2.8.4;18.8.4 Ergebnisse eines Teststeuerungspults;399
7.3;19 Ausblick;400
7.4;20 Anhang;402
7.4.1;20.1 Glossar;402
7.4.2;20.2 Literatur;403
8;Index;416


Prof. Dr. Mario Winter ist Professor am Institut für Informatik der Fachhochschule Köln und dort Mitglied des Forschungsschwerpunkts „Software-Qualität“. Dr. Mohsen Ekssir-Monfared ist Bereichsleiter Software-Test und Qualitätssicherung bei BDC EDV-Consulting. Harry M. Sneed (MPA) gehört zu den Pionieren der Software-Testtechnologie, wurde 1996 von der IEEE ausgezeichnet und ist seit 2005 GI-Fellow der Deutschen Gesellschaft für Informatik. Richard Seidl ist Leiter der Testabteilung bei GETEMED Medizin- und Informationstechnik AG. Die Konzeption und Implementierung von strukturierten und automatisierten Software-Tests bilden den Schwerpunkt seiner Arbeit. Dr. Lars Borner ist bei der Datev eG in Nürnberg beschäftigt und unterstützt die dortigen Software-Entwicklungsprojekte hinsichtlich Software-Test- und Software-Entwicklungsprozess, Testmethodik und Werkzeugeinsatz.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.