GOOGLE ADS

Montag, 2. Mai 2022

Karate-API: * def von der Antwort löst einen Syntaxfehler aus

Ich richte einen E2E-Test ein und verkette meine Anfrage/Antworten. Ich definiere Variablen aus jeder Antwort und verwende sie im nächsten Aufruf.

Es funktioniert bis zu einem gewissen Punkt, und dann taucht ein Problem auf, wenn die zweite Reaktion definiert wird.

Wenn ich operationId, operationSubject oder operationStatus (z. B. response.operationId) definiere, funktioniert es. Wenn ich etwas aus den Ergebnissen speichere (z. B. response.results.0.personId), wird dieser Fehler
ausgegeben Erwartet; aber.0 response.results.0.personId gefunden

Meine Antwort:

{ "operationId": "922459ecxxxx", "operationSubject": "BATCH_ENROLLMENT", "operationStatus": "PROCESSED", "results": { "0": { "personId": "367a73b5xxxx", "status": "PRE_AUTH", "email": "mquinter+TEST.69387488@email.com", "loanNumber": null }, "1": { "personId": "56f060fd-e34xxxxxx", "status": "PRE_AUTH", "email": "mquintxxxx@email.com", "loanNumber": null } } }


Lösung des Problems

So greift man nicht auf Daten in JSON zu. Siehe diese ähnliche Frage: https://stackoverflow.com/a/71847841/143475

Vielleicht wolltest du das machen:

* def foo = response.results[0].personId

Keine Kommentare:

Kommentar veröffentlichen

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...