160 lines
2.9 KiB
Markdown
160 lines
2.9 KiB
Markdown
## 📘 KAPITEL 4.2: BLACK-BOX-TESTVERFAHREN (DETAIL)
|
||
|
||
---
|
||
|
||
### 🎯 Ziel
|
||
|
||
- Testfälle auf Basis der **Anforderungen/Spezifikation** ableiten
|
||
|
||
- Fokus: **funktionales Verhalten** (ohne Quellcode)
|
||
|
||
|
||
---
|
||
|
||
## 1. ✅ ÄQUIVALENZKLASSEN-BILDUNG
|
||
|
||
### Ziel:
|
||
|
||
- Eingaberaum in **repräsentative Klassen** aufteilen (gültig + ungültig)
|
||
|
||
|
||
### Vorgehen:
|
||
|
||
1. Klassen identifizieren (z. B. Wertebereiche)
|
||
|
||
2. Gültige & ungültige Klassen bilden
|
||
|
||
3. Pro Klasse → 1 Repräsentant
|
||
|
||
|
||
**Beispiel: Eingabe 1–10**
|
||
|
||
- Gültig: 1–10 → z. B. Testwert 5
|
||
|
||
- Ungültig: <1, >10 → z. B. Testwert 0 und 11
|
||
|
||
|
||
---
|
||
|
||
## 2. ⚠️ GRENZWERTANALYSE
|
||
|
||
### Ziel:
|
||
|
||
- **Fehler an Grenzen** von Wertebereichen erkennen
|
||
|
||
|
||
### Vorgehen:
|
||
|
||
- Testfälle an & um die Grenze: `Grenze - 1`, `Grenze`, `Grenze + 1`
|
||
|
||
|
||
**Beispiel: Bereich 1–10**
|
||
|
||
- Testfälle: 0, 1, 2 | 9, 10, 11
|
||
|
||
|
||
➡️ Ergänzt Äquivalenzklassen
|
||
|
||
---
|
||
|
||
## 3. 🧾 ENTSCHEIDUNGSTABELLEN
|
||
|
||
### Ziel:
|
||
|
||
- **Regelbasierte Entscheidungen** systematisch testen
|
||
|
||
|
||
### Bestandteile:
|
||
|
||
- Bedingungen (z. B. "Kunde zahlt bar?")
|
||
|
||
- Aktionen (z. B. "Rabatt gewähren")
|
||
|
||
- Tabelle listet alle möglichen **Kombinationen**
|
||
|
||
|
||
### Vorteile:
|
||
|
||
- Gute Testabdeckung bei **Kombinatorik**
|
||
|
||
- Auch für Geschäftsregeln & Konfigurationen geeignet
|
||
|
||
|
||
---
|
||
|
||
## 4. 🔄 ZUSTANDSÜBERGANGSTEST
|
||
|
||
### Ziel:
|
||
|
||
- Testen von Systemen mit **internen Zuständen**
|
||
|
||
|
||
### Elemente:
|
||
|
||
- **Zustände** (z. B. „angemeldet“, „abgemeldet“)
|
||
|
||
- **Ereignisse/Übergänge** (z. B. „Login“, „Logout“)
|
||
|
||
- **Aktionen** (z. B. „Zugriff erlaubt“)
|
||
|
||
|
||
### Arten von Tests:
|
||
|
||
- Alle Übergänge
|
||
|
||
- Alle Zustände
|
||
|
||
- Ungültige Übergänge
|
||
|
||
|
||
➡️ Modellierung über **Zustandsdiagramme** sinnvoll
|
||
|
||
---
|
||
|
||
## 5. 👤 USE CASE TEST
|
||
|
||
### Ziel:
|
||
|
||
- **Benutzerverhalten / Interaktionen** mit dem System testen
|
||
|
||
|
||
### Merkmale:
|
||
|
||
- Abbildung typischer **Szenarien**
|
||
|
||
- Fokus auf **End-to-End-Abläufe**
|
||
|
||
- Kann auch **nicht-funktionale Aspekte** einbeziehen
|
||
|
||
|
||
### Beispiele:
|
||
|
||
- "Benutzer meldet sich an"
|
||
|
||
- "Benutzer gibt Bestellung auf"
|
||
|
||
|
||
---
|
||
|
||
## ✅ ZUSAMMENFASSUNG DER BLACK-BOX-VERFAHREN
|
||
|
||
|Verfahren|Fokus|Typische Anwendung|
|
||
|---|---|---|
|
||
|Äquivalenzklassen|Eingaberaum abdecken|Wertebereiche, Formate|
|
||
|Grenzwertanalyse|Fehler an Bereichsgrenzen|Zahlen, Datumswerte|
|
||
|Entscheidungstabellen|Regeln & Kombinationen prüfen|Rabattlogik, Konditionen|
|
||
|Zustandsübergänge|Zustandssysteme abbilden|Automaten, Sitzungen|
|
||
|Use Cases|Nutzerverhalten simulieren|Geschäftsprozesse, UI|
|
||
|
||
---
|
||
|
||
## 📝 KLAUSURRELEVANTE MERKPUNKTE
|
||
|
||
|Thema|Merksatz|
|
||
|---|---|
|
||
|Äquivalenzklassen|Pro Klasse genau **ein Testfall**|
|
||
|Grenzwertanalyse|Teste **an, vor und nach** der Grenze|
|
||
|Entscheidungstabellen|**Alle Regelkombinationen** prüfen|
|
||
|Zustandsbasierte Tests|Übergänge & Reaktionen prüfen, auch **ungültige**|
|
||
|Use Case Tests|Nutzer-Szenarien, oft End-to-End|
|