Beslutningstabel

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

  • Systematisk tilgang: Giver en struktureret metode til at dække alle mulige kombinationer af input 
  • Kompleks logik: Effektiv til at håndtere komplekse forretningsregler og logik
  • Let at forstå: Tydelig og nem at forstå for både testere og udviklere
  • Reducerer redundans: Hjælper med at undgå gentagelser og sikrer fuld dækning

Begrænsninger

  • Tidskrævende: Kan være tidskrævende at oprette og vedligeholde, især for meget komplekse systemer
  • Ikke egnet til alle scenarier: Mindre effektiv for systemer med få inputkombinationer
  • Kræver detaljeret viden: Kræver en grundig forståelse af forretningslogikken og reglerne

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.