Gatling 请求正文作为 bytearray
Gatling request body as bytearray
val scn = scenario("gatling test").
feed(circularfeeder.circular)
.exec(http("request")
.post(endpoint)
.header("Content-Type", "application/json")
.header("Accept-Encoding", "charset=UTF-8")
.body(StringBody("""${request}"""))
.check(status.is(200))
以上代码用于将每个 circularfeeder 数据作为字符串发送到请求正文。假设如果我想在正文中作为字节数组而不是字符串发送,我该如何修改行 .body(StringBody("""${request}"""))
代码.body(ByteArrayBody(getBytesData("""${request}""")))
无效。有什么建议吗?
选项 1
在 request
字符串上调用 getBytes
方法并将其传递给 ByteArrayBody
.body(ByteArrayBody { session =>
session("request")
.validate[String]
.map(s => s.getBytes(StandardCharsets.UTF_8))
})
选项 2
转换您从馈线获得的原始数据。
val circularfeeder = csv("myFile.csv").convert {
case ("request", string) => string.getBytes(StandardCharsets.UTF_8)
}
...
.body(ByteArrayBody("${request}"))
val scn = scenario("gatling test").
feed(circularfeeder.circular)
.exec(http("request")
.post(endpoint)
.header("Content-Type", "application/json")
.header("Accept-Encoding", "charset=UTF-8")
.body(StringBody("""${request}"""))
.check(status.is(200))
以上代码用于将每个 circularfeeder 数据作为字符串发送到请求正文。假设如果我想在正文中作为字节数组而不是字符串发送,我该如何修改行 .body(StringBody("""${request}"""))
代码.body(ByteArrayBody(getBytesData("""${request}""")))
无效。有什么建议吗?
选项 1
在 request
字符串上调用 getBytes
方法并将其传递给 ByteArrayBody
.body(ByteArrayBody { session =>
session("request")
.validate[String]
.map(s => s.getBytes(StandardCharsets.UTF_8))
})
选项 2
转换您从馈线获得的原始数据。
val circularfeeder = csv("myFile.csv").convert {
case ("request", string) => string.getBytes(StandardCharsets.UTF_8)
}
...
.body(ByteArrayBody("${request}"))