Akzeptanzkriterien sind eine Beschreibung dessen, was durch einen Test überprüft werden soll. Bei einer Anforderung wie „Als Benutzer möchte ich ein Buch aus der Bibliothek ausleihen“ könnte ein Akzeptanzkriterium lauten: „Überprüfen Sie, ob das Buch als ausgeliehen markiert ist“. Ein Akzeptanztest für diese Anforderung enthält die Details, so dass der Test jedes Mal mit der gleichen Wirkung durchgeführt werden kann.
TestformatBearbeiten
Akzeptanztests folgen normalerweise dieser Form:
Gegeben (Setup)
Ein festgelegter Zustand eines Systems
Wenn (Trigger)
Eine Aktion oder ein Ereignis tritt ein
Dann (Verifikation)
Der Zustand des Systems hat sich geändert oder eine Ausgabe wurde erzeugt
Außerdem ist es möglich, in jedem der folgenden Abschnitte (Gegeben, Wenn, Dann) Anweisungen hinzuzufügen, die mit UND beginnen.
Für die Beispielanforderung könnten die Schritte wie folgt aufgelistet werden:
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
Test abschließenBearbeiten
Die vorherigen Schritte enthalten keine spezifischen Beispieldaten, so dass diese hinzugefügt werden, um den Test abzuschließen:
Gegeben:
Buch, das nicht ausgecheckt wurde
Bücher | |
---|---|
Titel | Ausgecheckt |
Großes Buch | Nein |
Benutzer, der im System registriert ist
Benutzer | |
---|---|
Name | Sam |
Wenn:
Benutzer checkt ein Buch aus
Auscheckaktion | |||
---|---|---|---|
Benutzer | Sam | Auschecken | Buch |
Dann:
Buch ist als ausgeliehen markiert
Bücher | ||
---|---|---|
Titel | Ausgecheckt | Benutzer |
Großes Buch | Ja | Sam |
TestuntersuchungBearbeiten
Die Untersuchung des Tests mit konkreten Daten führt meist zu vielen Fragen. Für das Beispiel könnten dies sein:
- Was ist, wenn das Buch bereits ausgeliehen ist?
- Was ist, wenn das Buch nicht existiert?
- Was ist, wenn der Benutzer nicht im System registriert ist?
- Gibt es ein Datum, an dem das Buch eingecheckt werden muss?
- Wie viele Bücher kann ein Benutzer auschecken?
Diese Fragen helfen, fehlende oder unklare Anforderungen zu ermitteln. Zusätzliche Details wie ein Fälligkeitsdatum können dem erwarteten Ergebnis hinzugefügt werden. Andere Akzeptanztests können überprüfen, ob Bedingungen wie der Versuch, ein bereits ausgeliehenes Buch auszuleihen, den erwarteten Fehler erzeugen.
Ein weiteres TestbeispielBearbeiten
Angenommen, der Geschäftskunde möchte eine Geschäftsregel, dass ein Benutzer jeweils nur ein Buch ausleihen kann. Der folgende Test würde dies demonstrieren:
Szenario:Prüfen, ob die Geschäftsregel für das Auschecken erzwungen wird
Gegeben:
Ausgechecktes Buch
Bücher | ||
---|---|---|
Titel | Ausgecheckt | Benutzer |
Buch | Ja | Sam |
Ein weiteres tolles Buch | Nein |
Name
Sam
Wenn:
Benutzer checkt ein weiteres Buch aus
Auschecken Aktion | |||
---|---|---|---|
Benutzer | Sam | Auschecken | Ein weiteres tolles Buch |
Dann:
Fehler tritt auf
Beschreibung
Verletzung der Checkout-Geschäftsregel
ProjektabnahmetestsBearbeiten
Neben Abnahmetests für Anforderungen können Abnahmetests auch für ein Projekt als Ganzes verwendet werden. Wenn diese Anforderung z. B. Teil eines Bibliotheksbuchausleihprojekts ist, könnte es Akzeptanztests für das gesamte Projekt geben. Diese werden oft als SMART-Ziele bezeichnet. Ein Beispiel: „Wenn das neue Bibliothekssystem in Betrieb ist, können die Benutzer dreimal so schnell wie heute Bücher ein- und ausleihen“.