首页 > 解决方案 > Gatling - 大型请求体并使用不同的 .json 文件作为每个会话的输入

问题描述

我有一个 2.000 行的 json 请求正文。我想为每个虚拟用户使用不同的静态 json 文件。我创建了 10 个不同的文件,每个文件有 2000 行。我如何为每个用户“提供”这 10 个不同的文件,如下所示:

.exec(http("sendMedication")
  .post("/Patient/$sendMedication")
  .body(ElFileBody("magnus/SendMedication_request_2021.json"))
  .check(status.is(200)))

其中“SendMedication_request_2021.json”必须是每个用户随机或循环的

我可以做类似的事情:

SendMedication_request_2021(#1).json

鉴于我有:

SendMedication_request_2021_1.json SendMedication_request_2021_2.json SendMedication_request_2021_3.json

等等?

标签: gatling

解决方案


您可以使用文件名列表创建 csv 文件并通过 Gatling EL

文件名.csv

fileName
SendMedication_request_2021_1.json
SendMedication_request_2021_2.json
....

和场景:

.feed(csv("fileNames.csv").random)
.exec(http("sendMedication")
      .post("/Patient/$sendMedication")
      .body(ElFileBody("${fileName}"))
      .check(status.is(200)))

推荐阅读