Karate supports the following functional-style operations via the JS API - karate.map(), karate.filter() and karate.forEach(). So if you return complex objects such as a custom Java instance or a JS function that depends on complex objects, this may cause issues when you run in parallel. Here is an example that you can try: The driver.inputFile() can take an array or varargs as the second argument. Multiple fields can be set in one step using multipart fields. See also responseStatus if you want to do some complex assertions against the HTTP status code. After you have switched, any future actions such as click() would operate within the selected