2017-11-23 1 views
0

Einer meiner Tests wartet, bis ein Ereignis im Then Schritt auftritt. Wenn der Test einwandfrei funktioniert, gibt es kein Problem, aber wenn der Test fehlschlägt (d. H. Kein Ereignis ausgelöst wird), dann hängt es einfach.Gurke stoppt die Ausführung nach der Zeit in Schritten

Wie kann ich ein Timeout in Cucumber einstellen?

Ich weiß, JUnit hat einen Timeout-Parameter, den Sie in der @Test annotation verwenden können, gibt es etwas Ähnliches für Cucumber?

Antwort

1

Cucumber hat die JUnit Muster gefolgt und bietet eine timeout Parameter in seinen Schritten Anmerkungen. Dies erfordert einen langen Wert, der die Anzahl der Millisekunden angibt, nach denen der Schritt fehlschlägt, wenn die Ausführung nicht beendet wird.

Sie können es wie folgt:

@Then(value = "^verify (\\d+) events sent$", timeout = 5000) 

Dies auch auf den anderen Schrittarten funktioniert (zum Beispiel Given, When).

Vergessen Sie nicht, vor der Schrittdefinitionszeichenfolge value = hinzuzufügen.

+0

funktioniert das? Ich habe ein einfaches Beispiel versucht und es scheint nicht zu versagen – jcalloway

+0

@jcalloway tut es für mich. Warum fragen Sie nicht eine Stackoverflow-Frage mit Ihrem Codebeispiel, verlinken Sie es hier und wir können es uns ansehen? –

Verwandte Themen