0
val scn = scenario("newUser")
    .exec(http("request_0")
        .get("/wordpress/?page_id=83")
        .headers(headers_0))
    .pause(1)
    .exec(http("request_1")
        .post("/wordpress/?page_id=83")
        .headers(headers_1)
        .body(RawFileBody("new_user_request_0001.txt")))

setUp(scn.inject(atOnceUsers(100))).protocols(httpProtocol)

我的问题如下...我必须加载 100 个文本文件,其结构类似于示例(“new_user_request_0001.txt”),随机使用 0 到 100 之间的数字。我能怎么做?谢谢你们

4

2 回答 2

0

您可以尝试使用uniformRandomSwitch,生成 100 的序列ChainBuilders,然后使用(...): _*语法将其解压缩为可变参数方法的参数:

val scn = scenario("newUser")
    .exec(http("request_0")
        .get("/wordpress/?page_id=83")
        .headers(headers_0))
    .pause(1)
    .uniformRandomSwitch(
        ((0 until 100).map{ idx =>
          http("request_1")
          .post("/wordpress/?page_id=83")
          .headers(headers_1)
          .body(RawFileBody(s"new_user_request_0${idx}.txt")))
        }): _*
    )

s" ... ${idx} ..."语法将idx传递的参数注入map到字符串中。

于 2018-04-05T17:54:05.543 回答
0

这很简单。您可以使用Random.shuffle

scala.util.Random.shuffle(0 to 100)
于 2018-04-05T15:41:44.547 回答