Description
Book SynopsisSoll in Ihrem Unternehmen neue Software eingeführt werden und Sie müssen sie testen? Und Sie wissen nicht, wie Sie das angehen sollen? Oder wollen Sie als Entwickler über den Tellerrand schauen und sich auch mit dem Softwaretesten beschäftigen? Dieses Buch erläutert alle vom ISTQB® Certified Tester Foundation Level geforderten Lerninhalte sowohl für den Anwender mit Fachkenntnissen, der Software später einsetzen wird, als auch für den Programmierer. Die Übungen sind leicht in die eigene Praxis übertragbar und sorgen für eine optimale Prüfungsvorbereitung. Darüber hinaus wird für alle Testaktivitäten gezeigt, wie diese jeweils im klassischen oder im agilen Kontext aussehen.
Table of ContentsÜber die Autorin 9
Einführung 21
Über dieses Buch 21
Was Sie nicht lesen müssen 22
Törichte Annahmen über die Leser 23
Wie Sie dieses Buch nutzen 24
Wie dieses Buch aufgebaut ist 25
Konventionen und Symbole, die in diesem Buch verwendet werden 26
Teil I: Testen ist mehr als die Summe seiner Teile 29
Kapitel 1 Mal eben schnell was testen?! 31
Warum getestet wird 31
Was beim Testen an Fehlern & Co herauskommt 33
Wie Testen funktioniert 35
Testplanung 35
Testüberwachung und –steuerung 37
Testanalyse 37
Testentwurf 39
Testrealisierung 40
Testdurchführung 40
Testabschluss 41
Wie Werkzeuge das Testen unterstützen 41
Kapitel 2 Grundlegendes Handwerkszeug 43
Fehlverhalten erzeugt Fehlerzustände 43
Fehlerzustände entfernen 43
Fehler analysieren 45
Falsch positiv und falsch negativ 45
Die Dokumente – was der Testprozess so alles produziert 46
Ganz am Anfang: Testplanung 47
Am roten Test-Faden entlang: Testüberwachung und –steuerung 48
Tests vorbereiten und schon einmal die ersten Fehlerzustände entdecken 50
Von Testbedingungen zu Testfällen 52
Endlich wird es realisiert 53
Der Test läuft, läuft nicht, läuft … 54
Und zum guten Schluss … 55
Grundsätze des Testens 55
Grundsatz 1: Testen zeigt die Anwesenheit von Fehlerzuständen, nicht deren Abwesenheit 56
Grundsatz 2: Vollständiges Testen ist nicht möglich 56
Grundsatz 3: Frühes Testen spart Zeit und Geld 56
Grundsatz 4: Häufung von Fehlerzuständen 57
Grundsatz 5: Vorsicht vor dem Pestizid-Paradoxon 57
Grundsatz 6: Testen ist kontextabhängig 57
Grundsatz 7: Trugschluss: »Keine Fehler« bedeutet ein brauchbares System 58
Und die Moral von der Geschicht’ – Ethische Grundlagen 58
Öffentlichkeit – Bitte nicht testen 58
Kunde und Arbeitgeber – Kühl genug? 59
Produkt – Super User? 59
Urteilsvermögen – Hoher Blutdruck 60
Management – Den Urlaub verschieben 60
Berufsbild – Klatsch und Tratsch 61
Kollegen – Kollegial? 61
Persönlich – Lebenslang für Tester 62
Kapitel 3 Gutes Testen zur rechten Zeit 63
Der Software-Kontext macht das Testen 63
Im V-oder W-Modell unterwegs 65
Testen im agilen Kontext 69
Das agile Manifest und die zwölf agilen Prinzipien 70
Scrum 72
Qualität geht vor 75
Gutes Testen überall 75
Kapitel 4 Testen von Stufe zu Stufe 77
Komponententest: Klitzekleine Teststückchen 78
Integrationstest: Mehr als die Summe seiner Teile 80
Big Bang 82
Top-down 82
Bottom-up 84
Ad hoc (ASAP) 85
Critical-First 85
Backbone 85
Continuous Integration 88
Auswahl einer Integrationsteststrategie 90
Systemtest: Das große Ganze 91
Abnahmetest: Der Wert für den Kunden 93
Benutzerabnahmetests 94
Betrieblicher Abnahmetest 95
Vertraglicher Abnahmetest 95
Regulatorischer Abnahmetest 96
Alpha-Tests 96
Beta-Tests 96
Pflege und Wartung 97
Teil II: Statisches und dynamisches Testen 99
Kapitel 5 Statisches Testen 101
Was wird analysiert? 101
Vorteile statischer Tests 102
Fehlersuche im Team 104
Reviewarten 105
Die verschiedenen Phasen 107
Planung 108
Reviewbeginn 110
Individuelles Review (individuelle Vorbereitung) 111
Befundkommunikation und –analyse 111
Fehlerbehebung und –bericht 114
Rollen, die das Review ins Rollen bringen 116
Der Autor 116
Der Reviewleiter und der Moderator 117
Die Reviewer 118
Der Protokollant 118
Lesetechniken 119
Ad hoc 119
Checklistenbasiert 119
Perspektivenbasiert 120
Rollenbasiert 121
Szenarien und Probeläufe (Dry Runs) 122
Sichere Methoden für den Untergang 123
Kapitel 6 Was beim Testen dokumentiert wird 127
Testentwurfsspezifikationen 129
Tests aneinanderketten 132
Weitere Testdokumente 133
Kapitel 7 Black-Box-Verfahren 137
Äquivalenzklassenbildung: Alle Eingaben sind gleichwertig 138
Genug getestet? 147
Grenzwertanalyse: Bis ans Limit gehen 152
Genug getestet? 156
Hysteresen 157
Entscheidungstabellentest: Keine schwere Entscheidung 159
Beispielspezifikation »Neuer Bonus auf Zahnersatz« 159
Genug getestet? 165
Zustandsbasierter Test: Zustände sind das hier! 166
Zustandsgraphen 167
Testfallerstellung in 5 Schritten 168
Anmeldung in der Musikschule 169
Genug getestet? 179
Anwendungsfallbasierter Test: Szenarien durchspielen 182
Genug getestet? 185
Kapitel 8 White-Box-Verfahren 187
Strukturen durchschauen 188
Beispiel »Seminare buchen« 188
Schwächen entdecken 188
Kontrollflussgraphen 190
Knoten für Knoten 192
Kante für Kante 194
Mehr als Knoten und Kanten 196
Eine Schleife drehen und noch eine und noch eine … 196
Schwierige Entscheidungen in Kontrollflussgraphen 197
Kapitel 9 Mehr als bloße Intuition 201
Abgehakte Listen 202
Exploratives Testen – der Forschermodus 203
Mythos 1: Exploratives Testen geht schneller 205
Mythos 2: Exploratives Testen ist planloses Herumspielen 206
Mythos 3: Explorativ testet man immer alleine 206
Mythos 4: Exploratives Testen wird nicht dokumentiert 206
Wann exploratives Testen gut funktioniert 207
Heuristiken – keine Nadel im Heuhaufen 208
Kapitel 10 Gestresste Systeme und anderes Nicht-Funktionales 211
Von Zeiten, Lasten und Stress 213
Zum Beispiel Benutzbarkeit 215
Warte nur ein Weilchen auf die Wartbarkeit 216
Re(gressions)tests 218
Testen im Betrieb und nach Betriebsschluss 218
Teil III: Das Testen managen 221
Kapitel 11 Gut geplant = halb getestet 223
Von Menschen und Rollen 225
Der Tester 225
Der Testmanager 229
Wer beim Planen scheitert 230
Unterstützen Sie das Lesen des Testkonzepts 235
(Test-) Kommunikationsplan 238
Risikomanagement 238
Teststrategie 239
Testaktivitäten und Abschätzungen 239
Testteam 240
Zeitplan 241
Vielfältige Teststrategie 242
Testwürdigkeit, Eingangs-und Endekriterien 245
So ein Aufwand 247
Kapitel 12 Das Testen dirigieren 253
Standpunkt feststellen 253
Testfortschritt 254
Fehlerstatus 255
Teststatus 256
Abdeckungsmaße 257
(Test-) Projekt-Kennzahlen 258
Blitzlicht 259
Daily Standup 259
Testmanagement an der Kaffeemaschine 260
Vom Testen berichten 260
Teststatusbericht 261
Testabschlussbericht 263
Zurück zum Plan 264
Instabile Testbasis 264
Lieferung der Testobjekte verzögert sich 264
Zu viele Fehlermeldungen 265
Was schiefgehen kann, geht schief 266
Kapitel 13 No risk, no test 269
Auf die Formulierung kommt es an 270
Dreierlei Maßnahmen 272
Risikobasiertes Testen 273
Teil IV: Unterstützendes 279
Kapitel 14 Tester ticken anders als Entwickler 281
Man muss nur mit den Leuten reden 281
Destruktive Tester, konstruktive Entwickler 284
Sage mir nur, was ich schon glaube 285
Kapitel 15 Konfigurationen managen 287
Von Mastern und Zweigen 290
Ordnung ist das halbe Testen 291
Kapitel 16 Von Abweichungen und anderen Störungen 293
»Gute« Fehler melden 295
Der Lebenslauf eines Fehlers 299
Was Tester sonst noch finden 301
Kapitel 17 Werkzeuge des Testens 303
Wer misst, misst Mist 304
Mehr als nur Testautomaten 305
Management von Tests und Testmitteln 305
Unterstützung statischer Tests 306
Unterstützung von Testentwurf und –realisierung 307
Unterstützung von Testdurchführung und –protokollierung 307
Messung von Performanz und dynamische Analysen 308
Spezialwerkzeuge 308
A fool with a tool 309
Risiken und Nebenwirkungen 310
Datengetriebene Testverfahren und Skripte 312
Schlüsselwortgetriebene Testverfahren 313
Auswertung automatisierter Tests 313
Vom Modell zum Test 313
Schnittstellen 314
Welches Tool hätten’S denn gern? 314
Teil V: Der Top-Ten-Teil 319
Kapitel 18 Zehn Tipps für agiles Testen 321
Interpretieren Sie das Agile Manifest für sich 321
Picken Sie keine agilen Rosinen 321
Schätzen Sie als Tester mit 322
Prüfen Sie die Testbasis schon im ersten Meeting 322
Nutzen Sie das Daily Standup aktiv 323
Pull statt Push 323
Arbeiten Sie nicht für die Ablage P 324
Machen Sie keine Überstunden 324
Prüfen Sie Ihre Teststrategie mit dem agilen Testquadranten 325
Testen Sie nicht alleine 326
Kapitel 19 Zehn Bücher, die Sie weiterbringen 327
A Coach’s Guide to Agile Testing 327
ATDD in der Praxis (ATDD by Example) 328
Bärentango 328
Critical Testing Processes 329
Fifty Quick Ideas to Improve Your Tests 329
Lessons Learned in Software Testing 330
Managing the Test People 331
Post Mortem 331
Reviews in der System-und Softwareentwicklung 332
Testing Embedded Software 332
Anhang A Musterlösungen 333
Abbildungsverzeichnis 351
Stichwortverzeichnis 355