Ich habe ein seltsames Problem mit der Ausführung von testCase.Korrekter Test Fallausführung führt zum Status 'Fehlgeschlagen'
Ich habe einen Testfall mit folgender Struktur:
Setup script:
set session_id = 0
set session_index = 0
store custom properties in an external file
und Testfall Körper
Test Case:
data source
SOAP - authentication on components (gives session_id for each component)
groovy - recover useful data (store session_id in custom prop session_id_<session_index>)
source loop
SOAP - start asynchronous service on component 1
SOAP - check status on component 1
goto 'check status' while status = Pending
SOAP - check status on component 2
goto 'disconnect terminals' is session_id = 0
SOAP disconnect
groovy disconnect terminal : loop for each session_index: set session_id = session_id_<session_index> and use it in the SOAP disconnect step (I use run test step)
TearDown Script: Wiederherstellen der benutzerdefinierten Eigenschaften
Alle diese Schritte ausführen mit Erfolg, ich habe keinen Fehler protokolliert, aber der Gesamttest hat einen FAILED-Status.
Ich erkannte, dass das Problem von den Goto-Schritten kommt: Ich bin auf die SOAP-Anfrage zurückschleifen, um den Status zu überprüfen, während der Status zurückgegeben wird auf "ausstehend". Jedes Mal, wenn die Anfrage "ausstehend" zurückgibt, schlägt sie fehl und ich sende die Prüfanfrage erneut. Wenn der Status schließlich 'Erfolg' ist, wird der Testschritt grün (OK) und der Testfall wird fortgesetzt.
Im Gesamtergebnis wird der mehrfach abgespielt Prüfschritt einmal für jede 'Iteration' gespeichert und das Ergebnis ist nur für das letzte Vorkommen OK, daher ist der Gesamtprüfungsstatus FAILED.