Management-Zusammenfassung dieses Beitrags:
Mit Black-Box- und White-Box-Tests werden Testarten / → Testverfahren beim → Softwaretest beschrieben, die entweder keine Kenntnisse der inneren Struktur des Testobjekts benötigen oder sehr vollständige.
In diesem Beitrag werden Black-Box- und White-Box-Testverfahren vorgestellt.
1. Einleitung und Grundlagen
1.1 Definitionen
Das → ISTQB /ISTQB-→ Glossar/ definiert Black-Box-Test / Black-Box-Testverfahren (engl. black-box testing / black-box test technique) folgendermaßen:
“Funktionales oder nicht-funktionales → Testen ohne Nutzung von Informationen über Interna eines Systems oder einer Komponente.“
bzw.
“Ein Testverfahren, das auf einer Analyse der Spezifikation einer Komponente oder eines Systems basiert.”
Zum White-Box-Test / White-Box-Testverfahren (engl. white-box testing / white-box test technique) schreibt das ISTQB /ISTQB-Glossar/:
“Ein Test, der auf der Analyse der internen Struktur einer Komponente oder eines Systems basiert.”
bzw.
“Ein Testverfahren, das nur auf der inneren Struktur einer Komponente oder eines Systems basiert.”
Der Begriff Testverfahren (engl. test technique) wird beim ISTQB wie folgt beschrieben:
“Eine Vorgehensweise zum Definieren von Testbedingungen, Entwerfen von Testfällen und Spezifizieren von Testdaten.”
Schreibweise:
In diesem Beitrag werden die Begriffe Black-Box und White-Box auseinander und mit Bindestrich geschrieben, “Blackbox” und “Whitebox” werden nicht verwendet, auch wenn dies nach zulässig wäre (und bei /Spillner19/ so genutzt wird).
1.2 Einordnung
Die ISO 29119–4:2021 /ISO-29119/ definiert folgende drei dynamische Testverfahren (Abbildung 1.1):
- Black-Box-Testverfahren oder spezifikationsbasierte Testverfahren: Es werden Tests ohne Kenntnisse der inneren Struktur genutzt
- White-Box-Testverfahren oder strukturbasierte Testverfahren: Es werden Tests auf Basis der inneren Struktur genutzt
- Erfahrungsbasierte Testverfahren: Es werden Tests verwendet, die (rein) auf dem Wissen und den Erkenntnissen der Tester basieren
Abbildung 1.1: Testverfahren nach ISO 29119
1.3 Beschreibung nach Spillner
Spillner /Spillner19/ stellt Black-Box und White-Box-Testverfahren vergleichend gegenüber (Abbildung 1.2). Mit PoC wird dabei der “Point of Control” und mit PoO der “Point of Observation” bezeichnet.
Abbildung 1.2: Black-Box und White-Box-Testverfahren mit PoC und PoO (nach /Spillner19/)
2. Einsatz
Die Black-Box-Testverfahren kommen beim Integrations‑, System- und → Abnahmetest zum Einsatz, während die White-Box-Testverfahren in erster Linie beim Komponententest verwendet werden (Abbildung 2.1).
Abbildung 2.1: Black-Box- und White-Box-Testverfahren im → V‑Modell
2.1 Das Black-Box-Testverfahren
Die Funktionsweise des Black-Box-Testverfahrens aus Dokumentensicht ist in Abbildung 2.2 dargestellt: Aus der Anforderungsspezifikation (mit den Einzelanforderungen) ergibt sich die Testfallspezifikationen (mit den einzelnen Testfällen). Idealerweise wird die → Testfallspezifikation zeitgleich mit der Anforderungsspezifikation erstellt. Ist das Testobjekt (auf Basis der Anforderungsspezifikation) dann erstellt, kann es getestet werden. Als Ergebnis des Black-Box-Tests ergeben sich dann → Testprotokoll(e) und → Testberichte.
Abbildung 2.2: Die Funktionsweise des Black-Box-Testverfahrens aus Dokumentensicht
Die Black-Box-Testverfahren umfassen eine Reihe von einzelnen Testverfahren, die in der nachfolgenden Tabelle aufgelistet sind. Dabei werden in der zentralen → ISO-Norm 29119 /ISO-29119/ zwölf Black-Box-Testverfahren genannt — die Spalte “29119–4:2021” enthält entsprechend jeweils ein “X”. Das ISTQB verwendet im Lehrplan zum CTFL nur fünf (Version 2018 des Lehrplans /#ISTQB-CTFL-18/) bzw. vier (Version 2023 des Lehrplans /#ISTQB-CTFL-23/) Testverfahren.
Nr. | Englischer Begriff | Deutsche Übersetzung | 29119–4:2021 | ISTQB-18 | ISTQB-23 |
---|---|---|---|---|---|
1. | Equivalence partitioning | Äquivalenzklassenbildung | X | X | X |
2. | Classification tree method | Klassifikationsbaumverfahren | X | - | - |
3. | Boundary value analysis | Grenzwertanalyse | X | X | X |
4. | Syntax testing | Syntaxtest | X | - | - |
5. | Combinatorial test design techniques | Kombinatorische Testverfahren | X | - | - |
6. | Decision table testing | Entscheidungstabellentest | X | X | X |
7. | Cause-effect graphing | Ursache-Wirkungs-Graph-Analyse | X | - | - |
8. | State transition testing | Zustandsübergangstest / Zustandsbasierter Test | X | X | X |
9. | Scenario testing / → Use case testing | Anwendungsfallbasierter Test | X | X | - |
10. | Random testing | Zufallstest | X | - | - |
11. | Metamorphic testing | Metamorpher Test | X | - | - |
12. | Requirements-based testing | Anforderungsbasierter Test | X | - | - |
2.2 Das White-Box-Testverfahren
Die Funktionsweise des White-Box-Testverfahrens aus Dokumentensicht ist in Abbildung 2.3 dargestellt. Wesentlich ist dabei, dass die interne Struktur des Testobjekts bekannt sein muss.
Abbildung 2.3: Die Funktionsweise des White-Box-Testverfahrens aus Dokumentensicht
Die White-Box-Testverfahren umfassen eine Reihe von einzelnen Testverfahren, die in der nachfolgenden Tabelle aufgelistet sind. Dabei werden in der zentralen ISO-→ Norm 29119 /ISO-29119/ sieben Black-Box-Testverfahren genannt — die Spalte “29119–4:2021” enthält entsprechend jeweils ein “X”. Das ISTQB verwendet im Lehrplan zum CTFL nur zwei (Version 2018 des Lehrplans /#ISTQB-CTFL-18/ und Version 2023 des Lehrplans /#ISTQB-CTFL-23/) White-Box-Testverfahren.
Nr. | Englischer Begriff | Deutsche Übersetzung | 29119–4:2021 | ISTQB-18 | ISTQB-23 |
---|---|---|---|---|---|
1. | Statement testing | Anweisungstest | X | X | X |
2. | Branch testing | Zweigtest | X | - | X |
3. | Decision testing | Entscheidungstest | X | X | - |
4. | Branch condition testing | Bedingungstest | X | - | - |
5. | Branch condition combination testing | Mehrfachbedingungstest | X | - | - |
6. | Modified condition/decision coverage (MCDC) testing | Modifizierter Bedingungs-/Entscheidungstest | X | - | - |
7. | Data flow testing | Datenflusstest | X | - | - |
A. Präsentationen, Literatur und Weblinks
- -
Literatur
- /Spillner19/ Andreas Spillner, Tilo Linz: Basiswissen Softwaretest: Aus- und Weiterbildung zum Certified Tester – Foundation Level nach ISTQB-→ Standard, dpunkt, Heidelberg 6. Auflage 2019, ISBN 978–3‑86490–583‑4
Weblinks
- /ISO-29119/ ISO 29119–1:2022: “Software and → systems engineering — Software testing — Part 1: General concepts”: Übersichtsseite der ISO zur Normenreihe 29119 (englisch)
- /#ISTQB-CTFL-Syllabus-18/, /#ISTQB-CTFL-18/ ISTQB — International Software Testing Qualifications Board: Syllabus zum CTFL 2018, Version 3.1.1 vom Juli 2021 (englisch, pdf-Datei, 93 Seiten)
- /#ISTQB-CTFL-Syllabus-23/, /#ISTQB-CTFL-23/ ISTQB — International Software Testing Qualifications Board: Syllabus zum CTFL 2023, Version 4.0 vom April 2023 (englisch, pdf-Datei, 74 Seiten)
- /ISTQB-Glossar/ Das Glossar zum Softwaretest des ISTQB (Online; deutsch, andere Sprachen)
- /#Wiki-Black-Box/ Black-Box in der deutschen Wikipedia
- /#Wiki-White-Box-Test/ White-Box-Test in der deutschen Wikipedia
Legende zu den Weblinks
/ / Verweis auf eine Website (allgemein)
/*/ Verweis auf eine Website, die als Ergänzung zu einem Buch dient
/#/ Verweis auf ein einzelnes Thema auf einer Website
/#V/ Verweis auf ein Video auf einer Website
Letzte Aktualisierung: 24.05.2023 © Peterjohann Consulting, 2005–2024