需要在Jmeter中使用“ CSV数据集配置”构建大型Json请求

时间:2020-01-31 15:13:58

标签: json csv jmeter performance-testing

https://stackoverflow.com/a/27637247/12820240

我从另一个问题中看到了以上答案(https://stackoverflow.com/a/27637247/12820240), 但我的问题是 无论如何,我可以通过添加用新数据分隔的逗号来构建大型Json Request吗?将不胜感激任何帮助/方向。 例如:

{
{
  "phoneNo": "9998885551",
  "lastName": "john25",
  "email": "azp25@gmail.com",
  "firstName": "ricky25",
  "mobileNo": "9820420420"
},
{
  "phoneNo": "9998885552",
  "lastName": "john26",
  "email": "azp26@gmail.com",
  "firstName": "ricky25",
  "mobileNo": "9820420421"
},
{
  "phoneNo": "9998885553",
  "lastName": "john27",
  "email": "azp27@gmail.com",
  "firstName": "ricky27",
  "mobileNo": "9820420422"
}

...

}

谢谢

1 个答案:

答案 0 :(得分:0)

鉴于您的CSV文件如下所示:

9998885551,john25,azp25@gmail.com,ricky25,9820420420
9998885552,john26,azp26@gmail.com,ricky26,9820420421
  1. JSR223 PreProcessor添加为HTTP Request采样器的子代,您要生成哪个主体
  2. 将以下代码放入“脚本”区域:

    def body = []
    new File('/path/to/your/file.csv').readLines().each { line ->
        def entry = [:]
        def values = line.split(',')
        entry.put('phoneNo', values[0])
        entry.put('lastName', values[1])
        entry.put('email', values[2])
        entry.put('firstName', values[3])
        entry.put('mobileNo', values[4])
        body.add(entry)
    }
    sampler.addNonEncodedArgument('', new groovy.json.JsonBuilder(body).toPrettyString(),'')
    sampler.setPostBodyRaw(true)
    
  3. 就是这样,JSR223预处理器将从CSV文件中生成请求正文

    enter image description here

参考:

相关问题