Acceptanskriterier är en beskrivning av vad som ska kontrolleras av ett test. Med ett krav som ”Som användare vill jag låna ut en bok från biblioteket” kan ett acceptanskriterium vara ”kontrollera att boken är markerad som utcheckad”. Ett acceptanstest för detta krav innehåller detaljerna så att testet kan utföras med samma effekt varje gång.
TestformatRedigera
Acceptanstester följer vanligtvis denna form:
Given (setup)
Ett specificerat tillstånd i ett system
When (trigger)
En åtgärd eller händelse inträffar
Then (verification)
Systemets tillstånd har ändrats eller ett utdata har producerats
Det är också möjligt att lägga till påståenden som börjar med AND i något av avsnitten nedan (Given, When, Then).
För exempelkravet skulle stegen kunna listas 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
Komplettera testetRedigera
De föregående stegen innehåller inga specifika exempeldata, så det läggs till för att slutföra testet:
Given:
Bok som inte har checkats ut
Böcker | |
---|---|
Titel | Har checkats ut |
Grym bok | No |
Användare som är registrerad i systemet
Users | |
---|---|
Name | Sam |
När:
Användaren checkar ut en bok
Utcheckningsåtgärd | |||
---|---|---|---|
Användare | Sam | Hämtar ut | Grov bok |
Sedan:
Boken är markerad som utcheckad
Böcker | ||
---|---|---|
Titel | Utcheckad | Användare |
Great book | Yes | Sam |
TestgranskningRedigera
Granskning av testet med specifika uppgifter leder vanligtvis till många frågor. För exemplet kan dessa vara:
- Vad händer om boken redan är utlånad?
- Vad händer om boken inte finns?
- Vad händer om användaren inte är registrerad i systemet?
- finns det ett datum då boken ska checkas in?
- Hur många böcker kan en användare checka ut?
Dessa frågor hjälper till att belysa saknade eller tvetydiga krav. Ytterligare detaljer, t.ex. ett förfallodatum, kan läggas till det förväntade resultatet. Andra acceptanstester kan kontrollera att villkor som att försöka checka ut en bok som redan är utcheckad ger det förväntade felet.
Ett annat testexempelRedigera
Antag att företagskunden vill ha en affärsregel som innebär att en användare bara kan checka ut en bok åt gången. Följande test skulle visa detta:
Scenario: Kontrollera att affärsregeln för utcheckning tillämpas
Givet:
Bok som har checkats ut
Böcker | ||
---|---|---|
Titel | Har checkats ut | Användare |
God bok | Ja | Sam |
En annan bra bok | Nej |
Namn
Sam
När:
Användaren checkar ut ytterligare en bok
Aktion för utcheckning | |||
---|---|---|---|
Användare | Sam | Hämtar ut | En annan bra bok |
Sedan:
Fel inträffar
Beskrivning
Överträdelse av affärsregel för utcheckning
Acceptanstester för projektRedigera
Förutom acceptanstester för krav kan acceptanstester användas för ett projekt som helhet. Om det här kravet till exempel är en del av ett projekt för utcheckning av biblioteksböcker kan det finnas acceptanstester för hela projektet. Dessa kallas ofta för SMART-mål. Ett exempel på test är ”När det nya bibliotekssystemet är i produktion kommer användarna att kunna checka in och ut böcker tre gånger så snabbt som idag”.