Ich schreibe einen Grails 2.2.1-Integrationstest mit dem Spock-Plugin, in dem ich versuche, zwei Datensätze auf den gleichen Controller-Endpunkt zu stellen:
%Vor%Das Problem, das ich sehe, ist, dass dieselbe JSON für beide Anfragen an addToInventory () gesendet wird.
Diese StackOverflow-Frage schlägt vor, anzurufen controller.request.reset (), aber das hat nicht funktioniert (Keine Signatur der Methode: org.codehouse.groovy.grails.plugins.testing.GrailsMockHttpServletRequest.reset ()).
Was versuche ich?
"Wo:" kann verwendet werden, um datengesteuertes Testen im Spock-Test-Framework durchzuführen. Versuchen Sie es mit dem folgenden Beispiel:
%Vor%Hoffe das hilft !!!
Während uns klar ist, dass where
-Klauseln verwendet werden sollten, um Tests sauber zu halten, gibt es Zeiten, in denen ein Test mehr als eine Anfrage ausführen muss. In meinem Fall wollte ich testen, dass, wenn es 2 wiederholte POSTS erhalten hat, das zweite korrekt zurückgewiesen wurde.
Ich fand, dass das Zurücksetzen der Antwort tat, was ich brauchte:
%Vor%Um die Antwort zu löschen.
Tags und Links grails testing integration spock