I'm trying to write the gatling
test step which will do the retry based on some saved session values. How could I access the values in following doIf
chain step?
val step = asLongAs(session => !session.contains("status") || session("status").as[Int] == 123) {
exec(http("post")
.post("/test")
.check(status.saveAs("status"))
.check(
checkIf(session => session("status").as[Int] == 123) {
jsonPath("$.data1").saveAs("data1")
jsonPath("$.data2").saveAs("data2")
}))
.doIf(session => session("status").as[Int] == 123) {
pause(data1, data2) // <------- use data here HERE
}
}
.doIf(session => session("status").as[Int] == 123) {
pause(
session => {
val data = session("data").as[String] // data is a String, not a FiniteDuration
??? // your job to return a FiniteDuration based on the data String
},
session => {
val data = session("data").as[String] // data is a String, not a FiniteDuration
??? // your job to return a FiniteDuration based on the data String
}
)
}