Acceptanskriterier er en beskrivelse af, hvad der skal kontrolleres af en test. Med et krav som “Som bruger vil jeg gerne tjekke en bog ud fra biblioteket”, kan et acceptkriterium være: “Kontroller, at bogen er markeret som tjekket ud”. En godkendelsestest for dette krav indeholder detaljerne, så testen kan udføres med samme virkning hver gang.
TestformatRediger
Acceptancetests følger normalt denne form:
Givet (opsætning)
En specificeret tilstand i et system
Når (udløser)
En handling eller begivenhed indtræffer
Så (verifikation)
Systemets tilstand er ændret eller et output er blevet produceret
Det er også muligt at tilføje udsagn, der starter med AND i et af nedenstående afsnit (Givet, Når, Så).
For eksempelkravet kunne trinene være anført som:
Given Book that has not been checked outAnd User who is registered on the systemWhen User checks out a bookThen Book is marked as checked out
Gennemfør testenRediger
De foregående trin indeholder ikke nogen specifikke eksempeldata, så det tilføjes for at gennemføre testen:
Givet:
Bog, der ikke er tjekket ud
Bøger | |
---|---|
Title | Tjekket ud |
God bog | Nej |
Bruger, der er registreret i systemet
Brugere | |
---|---|
Navn | Sam |
Hvornår:
Bruger tjekker en bog ud
Udbetalingshandling | |||
---|---|---|---|
Bruger | Sam | Tjekker en bog ud | God bog |
Så:
Bogen er markeret som udtjekket
Bøger | ||
---|---|---|
Titel | Udtjekket | User |
Great bog | Ja | Sam |
TestundersøgelseRediger
Undersøgelse af testen med specifikke data fører normalt til mange spørgsmål. For prøvens vedkommende kan disse være:
- Hvad sker der, hvis bogen allerede er tjekket ud?
- Hvad sker der, hvis bogen ikke findes?
- Hvad sker der, hvis brugeren ikke er registreret i systemet?
- Er der en dato, hvor bogen skal være indchecket?
- Hvor mange bøger kan en bruger checke ud?
Disse spørgsmål er med til at belyse manglende eller tvetydige krav. Yderligere detaljer som f.eks. en forfaldsdato kan tilføjes til det forventede resultat. Andre accepttests kan kontrollere, at betingelser som f.eks. forsøg på at tjekke en bog, der allerede er tjekket ud, giver den forventede fejl.
Et andet testeksempelRediger
Sæt, at forretningskunden ønsker en forretningsregel om, at en bruger kun kan tjekke en bog ud ad gangen. Følgende test ville demonstrere det:
Scenarie: Kontroller, at forretningsregel om udtjekning håndhæves
Givet:
Bog, der er blevet tjekket ud
Bøger | ||
---|---|---|
Titel | Tjekket ud | Bruger |
God bog | Ja | Sam |
En anden god bog | Nej |
Navn
Sam
Hvornår:
Brugeren tjekker endnu en bog ud
Udbetalingshandling | |||
---|---|---|---|
Bruger | Sam | Tjekker ud | Endnu en god bog |
Så:
Fejl opstår
Beskrivelse
Overtrædelse af forretningsregel for udtjekning
Projektets accepttestsRediger
Ud over accepttests for krav kan accepttests anvendes på et projekt som helhed. Hvis dette krav f.eks. var en del af et projekt om udtjekning af biblioteksbøger, kunne der være accepttests for hele projektet. Disse kaldes ofte for SMART-mål. Et eksempel på en test er: “Når det nye bibliotekssystem er i produktion, vil brugerne kunne tjekke bøger ind og ud tre gange så hurtigt som i dag”.