如何在jmeter中保存json响应?

rqenqsqc  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(198)

目标:将我从api请求获得的响应保存到json文件。需要的文件名:name_of_original_file_request_was_sent_with +“_response.json”直到现在,jmeter程序读取像6个文件,从每个文件中获取数据,并在发出API请求时将其放入body中。我得到6个响应。现在我如何将这些响应保存在文件中?我使用了以下代码,但它将我发送请求的原始文件替换为:

new File(vars.get('file')).bytes = prev.getResponseData()

下面是响应文件:

{
  "type": "transaction-response",
  "link": [
    {
      "relation": "self",
      "url": "https://someurl.com"
    }
  ],
  "entry": [
    {
      "response": {
        "status": "201 Created",
        "location": "Player/aerear",
        "etag": "1",
        "lastModified": "2020"
      }
    }       
  ]
}
8fsztsew

8fsztsew1#

因此,您基本上需要修改代码,以便:
1.从原始文件中删除扩展名
1.将_response.json添加到其中
对于第1点,您可以使用FileNameUtils.getBaseName()函数
对于第2点,可以使用简单的string concatenation
类似于:

new File(org.apache.commons.io.FilenameUtils.getBaseName(vars.get('file')) + '_response.json').bytes = prev.getResponseData()

应该能帮上忙。
有关JMeter中的Groovy脚本的更多信息:Apache Groovy: What Is Groovy Used For?

相关问题