如何在 JMETER 中循环 JSON 请求

How to loop through JSON request in JMETER

我正在使用 jmeter 进行性能测试并卡在了某个点。我必须处理多个用户的请求,并且在处理对 API 端点的请求之前,我必须迭代所有用户并且需要将“ConsentDate”更新为 system.DateTime。所以请帮我解决一下,我是jmeter框架的初学者。

我正在尝试寻求 JSR223 PreProcessor 的帮助。 请找到屏幕截图。 Jmeter

我正在从 CSV 文件中读取 json,我的请求结构如下所示,

{
"Company": {
    "User": {
        "u1": {
            "id": "1001",
            "consent": "Yes",
            "consentDate": "2020-03-14T17:44:56.224Z"
        },
        "u2": {
            "id": "1002",
            "consent": "No",
            "consentDate": "2020-03-14T17:44:56.224Z"
        }
    }
}

}

哦,这个很简单,请找截图

更多信息:


代码的文本版本以防万一,请继续post代码为文本,而不是图像:

def data = new org.apache.jmeter.config.Arguments()
def request = new groovy.json.JsonSlurper().parseText(sampler.getArguments().getArgument(0).getValue())
def now = new Date().format("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
request.Company.User.each { user ->
    user.getValue().consentDate = now
}
def body = new org.apache.jmeter.protocol.http.util.HTTPArgument('', new groovy.json.JsonBuilder(request).toPrettyString(), '', false)
body.setAlwaysEncoded(false)
data.addArgument(body)
sampler.setArguments(data)