Beslutningstabel er en black-box testdesignteknik, der bruges til at teste systemets adfærd for forskellige kombinationer af input. Teknikken indebærer at oprette en tabel, hvor hver række repræsenterer forskellige betingelser (input) og kolonnerne repræsenterer mulige kombinationer af disse betingelser. De nederste rækker i tabellen repræsenterer den tilsvarende systemadfærd (output) givet de angivne betingelser.
Denne teknik er især nyttig, når der er mange kombinationer af input, og det er vigtigt at sikre, at alle mulige scenarier er dækket. Det hjælper også med at identificere redundante testcases og reducere kompleksiteten i testprocessen.
Fordele
Begrænsninger
Typiske anvendelsestilfælde
Beslutningstabeller bruges typisk til at teste:
Forretningsregler: Hvor der er mange kombinationer af input og output
Komplekse systemer: Systemer med komplekse beslutningstræer og logiske grene
Validering af input: For at sikre, at alle mulige kombinationer af input er dækket
Eksempel
I tabellen herunder er vist et eksempel på en beslutningstabel for en forsimplet eksamenstilmeldingssituation fra en AU IT kontekst.
| Betingelser (input) | 1 | 2 | 3 | 4 | 5 | 6 |
| Eksamenstype (ordinær/reeksamen) | o | o | o | r | r | r |
| Status (Deltager/Deltager ikke/Deltager måske | Deltager | Deltager ikke | Deltager måske | Deltager | Deltager ikke | Deltager måske |
| Handling (output) | ||||||
| Tilmelding (J/N) | J | N | J | J | N | J |
Beregning af antal nødvendige testcases
Antallet af kombinationer og dermed antallet af testcases for at opnå 100% dækning med beslutningstabellen får man ved at gange antallet af klasser i hver betingelse. I ovenstående eksempel har vi to eksamenstyper og 3 forskellige værdier af status. Så det bliver altså 2x3=6 kombinationer og dermed 6 testcases.