Hi all, I managed to do what you want but only in hacky way:
val initStarted = new AtomicBoolean(false)
val initCompleteLatch = new CountDownLatch(1)
scenario("myScenario")
.doIf(_ => initStarted.getAndSet(true) == false) {
exec(http("first")
.get("/endpoint")
.check(status.is(200),
jsonPath("$..response.id").findAll.saveAs("reponseVariable")
)
).exec { session =>
reponseVariable = session("reponseVariable").as[String]
initCompleteLatch.countDown()
session
}
}
.exec { session =>
initCompleteLatch.await()
session.set("reponseVariable", reponseVariable)
}
.exec(http("second")
.post("/another/endpoint/{responseVariable}")
.body(...)
.check(status.is(200))
)
Hope it helps :) It can chain serveral requests, passthrough response along, and ensures first request is send only once.
International Futures (IFs) is a thinking tool for our global future. It was developed to assist people who are interested in personal and social choices lying ahead.
Scenario thinking is a tool for motivating people to challenge the status quo, or get better at doing so, by asking "What if?" Asking "What if?" in a disciplined way allows you to rehearse the possibilities of tomorrow.
"Scenarios transform information into perceptions... It is a creative experience that generates an 'Aha!' ... and leads to strategic insights beyond the mind's previous reach." - Pierre Wack
The Institute for Prospective Technological Studies (IPTS) is one of the seven scientific institutes of the European Commission's Joint Research Centre (JRC).