How to make EL expression random() working in session API?

I know “${foo.random()}” EL expression could make a random choice from a list “foo”. But how to do this in session API?

exec { session => val brand_id = "${brands_id_list.random()}" // not working val category_id = "${categories_id_list.random()}" // not working session.set("brand_id", brand_id).set("category_id", category_id) }

exec(http(“for”).get("/${brands_id_list.random()}/${categories_id_list.random()}")) works very well.

Hi,

try this

import java.util.concurrent.ThreadLocalRandom

exec { session =>
val brand_id = ThreadLocalRandom.current.nextInt(brands_id_list)
val category_id = ThreadLocalRandom.current.nextInt(categories_id_list)
session.set(“brand_id”, brand_id).set(“category_id”, category_id)
}

Thanks. And also, I find this could also work:

`

exec { session =>
val brand_id = Random.shuffle(
session(“brands_id_list”).as[List[String]]).head
val category_id = Random.shuffle(
session(“categories_id_list”).as[List[String]]).head

session.set(“brand_id”, brand_id).set(“category_id”, category_id)
}

`

在 2017年3月3日星期五 UTC+8下午3:26:09,Peter写道: