【问题标题】:How to have the data in the CSV file converted to JSON in the request body when using JMETER CSV Date set config使用 JMETER CSV 日期集配置时如何将 CSV 文件中的数据转换为请求正文中的 JSON
【发布时间】:2017-07-05 23:26:01
【问题描述】:

我有一个 CSV 数据集配置指向一个包含以下数据的 CSV 文件:

Ids
87541
4551
15441
11117
.....
n

我不需要遍历文件并对每个值执行多个POST 请求,而是需要一个POST 请求并将所有ID 传递给在生成的JSON 中应该像这样的请求正文:

{
  "ids": [
    84280,
    2334,
    235,
    32554,
    3663,
    346,
    344643,
    ....,
    n
  ]
}

【问题讨论】:

    标签: json csv jmeter


    【解决方案1】:
    1. JSR223 PreProcessor 添加为需要发送此 JSON 的请求的子项。
    2. 将以下代码放入“脚本”区域

      def csvfile = new File('test.csv')
      def jsonBuilder = new groovy.json.JsonBuilder()
      
      jsonBuilder {
          ids csvfile.collect { it }
      }
      
      vars.put('requestBody', jsonBuilder.toPrettyString())
      log.info(vars.get('requestBody'))   
      

      上面的代码将读取JMeter的“bin”文件夹中的test.csv文件并创建一个idsJSON Array,其中每个元素都是给定文件中的一行并将结果放入${requestBody}JMeter Variable /p>

    演示:

    参考资料:

    【讨论】:

      【解决方案2】:

      在 CSV 数据集配置中定义不在文件中的分隔符为 ~

      例如输入变量名ids

      然后在请求中使用它作为{ "ids": [ ${ids} ] }

      【讨论】:

        猜你喜欢
        • 2018-11-08
        • 1970-01-01
        • 2015-12-21
        • 2020-05-17
        • 2017-08-29
        • 2019-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多