如何使用Object类型jmeter变量的不同属性?

时间:2017-12-17 08:35:22

标签: jmeter performance-testing

我有一个jmeter变量,假设${employee},其值为{empid:"E101",empname:"XYZ",empcity:"Chennai"}

我想在不同的Http调用中使用这个变量,例如

demo.exmaplecode.com?Id=${employee}.empid
demo.exmaplecode.com?Name=${employee}.empmname
demo.exmaplecode.com?City=${employee}.empcity

我无法使用“。”提取值。运营商。 请建议从jmeter中的对象类型变量中提取值。

2 个答案:

答案 0 :(得分:0)

使用JSON Extractor并选择单选按钮JMeter Variable并输入变量名称

例如,使用以下设置:

Variable Names: empid  (your new variable name for id)

JSON Path Expressions: $.empid

Match No.: 1

答案 1 :(得分:0)

您可以使用__groovy() function之后的JMeter 3.1相当轻松地实现此目标,相关表达式如下:

  • ${__groovy((new groovy.json.JsonSlurper().parseText(vars.get('employee'))).empid,)}
  • ${__groovy((new groovy.json.JsonSlurper().parseText(vars.get('employee'))).empname,)}
  • ${__groovy((new groovy.json.JsonSlurper().parseText(vars.get('employee'))).empcity,)}

演示:

JMeter Groovy Parse JSON

更多信息:Groovy: Parsing and producing JSON