vault backup: 2025-07-02 14:34:34
This commit is contained in:
118
Semester 6/SWTEST/CTFL-Kapitel 4-1.md
Normal file
118
Semester 6/SWTEST/CTFL-Kapitel 4-1.md
Normal file
@@ -0,0 +1,118 @@
|
||||
## 📘 KAPITEL 4.1: TESTTECHNIKEN – GRUNDLAGEN
|
||||
|
||||
---
|
||||
|
||||
### 4.1 Einleitung: Warum Testverfahren?
|
||||
|
||||
- Systematisches Vorgehen → bessere **Testabdeckung**
|
||||
|
||||
- Unterstützung bei der Erstellung **guter Testfälle**
|
||||
|
||||
- Ziel: Fehler früh entdecken & reproduzierbar testen
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 🧪 HAUPTKATEGORIEN VON TESTVERFAHREN
|
||||
|
||||
|Kategorie|Merkmale & Grundlage|
|
||||
|---|---|
|
||||
|**Black-Box**|Anforderungen / Spezifikation|
|
||||
|**White-Box**|Programmstruktur / Code|
|
||||
|**Erfahrungsbasiert**|Intuition, frühere Fehler, Exploratives Testen|
|
||||
|
||||
---
|
||||
|
||||
### 🔲 1. BLACK-BOX-VERFAHREN (💡 Prüfungsrelevant)
|
||||
|
||||
Nutzen **Eingabe-Ausgabe-Beziehung**, ohne Quellcode zu betrachten.
|
||||
|
||||
#### a) Äquivalenzklassenbildung
|
||||
|
||||
- Eingaben in gültige/ungültige **Klassen** einteilen
|
||||
|
||||
- **Aus jeder Klasse → 1 Testfall**
|
||||
|
||||
|
||||
#### b) Grenzwertanalyse
|
||||
|
||||
- Grenzwerte sind **fehleranfällig**
|
||||
|
||||
- Testfälle **am Rand** der Äquivalenzklassen
|
||||
|
||||
|
||||
#### c) Entscheidungstabellen
|
||||
|
||||
- Repräsentieren **Regeln & Bedingungen**
|
||||
|
||||
- Kombinationen aus Bedingungen → Aktionen
|
||||
|
||||
|
||||
#### d) Zustandsbasierter Test
|
||||
|
||||
- Bei **zustandsbehafteten Systemen** (z. B. Automaten)
|
||||
|
||||
- Zustände, Übergänge, Events → modellieren & testen
|
||||
|
||||
|
||||
#### e) Use Case Test
|
||||
|
||||
- **Szenarien aus Benutzersicht** abdecken
|
||||
|
||||
- Ziel: reale Nutzungspfade testen
|
||||
|
||||
|
||||
---
|
||||
|
||||
### 🔳 2. WHITE-BOX-VERFAHREN
|
||||
|
||||
Berücksichtigen **interne Struktur** des Systems/Programms
|
||||
|
||||
#### a) Anweisungsüberdeckung
|
||||
|
||||
- Jede Anweisung im Code muss mindestens **einmal ausgeführt** werden
|
||||
|
||||
|
||||
#### b) Zweigüberdeckung
|
||||
|
||||
- Jeder Entscheidungspunkt (z. B. `if`, `else`) → **jede Richtung** wird getestet
|
||||
|
||||
|
||||
➡️ Für Entwicklernahe Tests (z. B. Komponententest)
|
||||
|
||||
---
|
||||
|
||||
### 💡 3. ERFAHRUNGSBASIERTE VERFAHREN
|
||||
|
||||
- Beruhen auf **Intuition, Erfahrung, Bauchgefühl**
|
||||
|
||||
- Beispiele:
|
||||
|
||||
- **Fehlerbasiertes Testen**
|
||||
|
||||
- **Checklisten**
|
||||
|
||||
- **Exploratives Testen**
|
||||
|
||||
|
||||
Einsatz besonders:
|
||||
|
||||
- wenn wenig Dokumentation vorhanden ist
|
||||
|
||||
- bei Timeboxing (agile Projekte)
|
||||
|
||||
- als Ergänzung zu strukturierten Verfahren
|
||||
|
||||
|
||||
---
|
||||
|
||||
## ✅ KLAUSURRELEVANTE MERKPUNKTE
|
||||
|
||||
|Thema|Merksatz|
|
||||
|---|---|
|
||||
|Black-Box|Tests basieren auf **Spezifikationen**, nicht auf Code|
|
||||
|White-Box|Ziel: **Codepfade** und **Verzweigungen** abdecken|
|
||||
|Äquivalenzklassen|Jede Klasse mit **einem repräsentativen Testfall**|
|
||||
|Grenzwertanalyse|Fehler liegen oft **an den Rändern**|
|
||||
|Entscheidungs- & Zustandsbasierte Tests|gut bei komplexem Verhalten & Bedingungen|
|
||||
|Erfahrungsbasiert|Ergänzend, flexibel, intuitiv, explorativ|
|
||||
Reference in New Issue
Block a user