Ich bin relativ neu in Bezug auf die Akzeptanzkriterien im GWT-Format und kämpfe damit, sie für die Funktionen zu schreiben, die das Überprüfen von Inhalten beinhalten. Zum Beispiel: Der Benutzer befindet sich auf der Homepage einer E-Commerce-Website und überprüft die Artikel, die auf dieser Website verkauft werden.
Meine User Story sieht so aus: Als Benutzer möchte ich die verfügbaren Produkte anzeigen, damit ich das Produkt finde, das ich kaufen möchte. Aber was ist mit Akzeptanzkriterien? Ich habe mir den „Gegebenen“ Teil (Gegeben, dass ich zur Systemhomepage navigiert bin) und den „Dann“-Teil (Dann kann ich die verfügbaren Produkte anzeigen) ausgedacht – „Wann“ ist jedoch ein Rätsel für Mich. Was ist dieser Auslöser, der den Benutzer von „Gegeben“ zu „Dann“ bewegt? Vielleicht liege ich mit „Gegeben“/„Dann“-Teilen einfach völlig falsch?
Ich habe versucht, das zu googeln, aber es scheint, als wären meine Anfragen ungeschickt oder es ist kein so großes Problem für alle anderen.
Vielen Dank im Voraus und sorry falls es schon mal gepostet wurde :)
Sie sind auf das Hauptproblem des GWT-Formats gestoßen – es ist zu ausführlich. Speziell für einfache Anforderungen. Wenn Sie wirklich bei diesem Format bleiben möchten, haben Sie hier eine Möglichkeit:
Given products are registered by administrator
When user navigates to home page
Then he sees recently added products
Wenn Sie kreativ sein dürfen, können Sie auch Abkürzungen nehmen und den gegebenen Schritt loswerden:
When user navigates to home page
Then he sees recently registered products
Given
würden Tester eine Vorbedingung nennen, es ist nicht obligatorisch.
Wir sollten damit beginnen: Akzeptanzkriterien müssen nicht im GWT-Format vorliegen.
GWT war als Teil der verhaltensgesteuerten Entwicklung speziell dazu gedacht, erwartetes Verhalten zu beschreiben. Einige klare Beispiele dafür, wo GWT perfekt passt, könnten sein:
Given I am logged in as an authorized user
And I have a list of products
When I delete a product
Then the product is no longer in the list
Given I am not logged in as a permission-limited user
And I have a list of products
When I delete a product
Then the product is still in the list
And the operation fails with an error "X"
Wenn wir jedoch nur über etwas wie Datenpräsentation sprechen, ist eine Liste mit Aufzählungszeichen der erwarteten Felder oder ein Bild einer Whiteboard-Skizze wahrscheinlich viel besser.
Die Idee mit Given-When-Then ist, dass Sie Ihre Akzeptanzkriterien in winzige Teile aufteilen, die dann ausgeführt werden können. Das bedeutet eine Aktion (wann) und ein erwartetes Ergebnis (dann). Sie führen diese Aktionen und Prüfungen in einem (gegebenen) Kontext aus. In Ihrem Fall fehlt Ihnen tatsächlich der Kontext, weil Sie die Homepage laden.
Ihr Akzeptanztest sollte in etwa so aussehen:
WENN ich die Homepage lade,
DANN sollte ich die verkauften Artikel sehen
Sehen Sie sich die Erläuterungen zu dieser ähnlichen Frage an: Gegeben, wann, dann Testen – brauche ich ein „wann“?
Stanislaw Baschkirtsew
Daniel
Daniel
Stanislaw Baschkirtsew