如何在jmeter中使用正则表达式提取器从响应数据中提取数据

7xllpg7q  于 2022-11-09  发布在  其他
关注(0)|答案(2)|浏览(170)

我有一个获取api响应数据的

{"result code":"OK",
"result Obj":{
     "List": [
       {
           "Id" :123,
           "Name" : "abc",
            "Ran" : 345
        },
        {
           "Id" :987,
           "Name" : "poi",
            "Ran" : 657
        }
      ]
}
}

我想使用正则表达式提取器从响应中提取名称变量数据(有n个名称没有固定),这样我就可以在beanshellAssert中使用它,以便稍后进行比较。
您能否演示一下如何使用正则表达式提取器分别提取name变量和id变量,以及如何在稍后使用该变量。
我尝试将“Name”:“(.*?)”作为reg表达式和模板$0$,但无法正常工作

f3temu5u

f3temu5u1#

例如,提取名称和ID的JMESPath表达式如下所示:

"result Obj".List[*].[Name,Id]

  • 从JMeter3.1开始,建议使用JSR223Elements和Groovy语言编写脚本,因此请考虑迁移到JSR223Assertion
kyks70gy

kyks70gy2#

我建议使用json提取器而不是正则表达式提取器

  1. json表达式:$..名称匹配大小写为1
    1.边界提取器
    左边界::【名称】:
    右边界:“,

相关问题