如何在jmeter中以字符串形式出现动态值

时间:2015-11-08 09:50:25

标签: jmeter performance-testing

我正在使用jmeter来测试使用IBM Worklight的移动应用程序的性能。我得到3个动态值作为字符串,我需要处理这些值。我是reular表达提取器,但它没有用。任何人都可以帮我找到解决方案。 Dyanamic值是

[ “{\” JSESSIONID \ “:\” 0000Mhn7GqWMU1P7Xi9dpJ7mgFb \ “\ ”mbparam \“:\ ”ZjurDsggbg9CZBgd5miAIHMIH%2B5oC7XdSukctItof7AJnpe8UNhlBsgM%2F8w%3D \“,\ ”MP-AUTH-TOKEN \“:\” leXozMVUXFYixuYwxgV58EXuRg1Vd0xtpZeouAMQtk6Pd0I1D618motg \ “}”]

更新

我尝试了你提供的正则表达式,但它也没有用。

Regular Expression

Sampler

Response

Debug Sampler

这些是我执行的步骤。如果我做错了,请指导我。

更新

这是我得到的回应

{ :“customerName”:“abc”, :“homeEmail”:“”, :“profileDebitAcc”:“01234567”, :“sessKey”:“0000V3EgdxpY937GTWQ3yogRLGq”, :“mbParam”:“hDurAxWHjPT%2BtB7xEyz7Huu51oDOAH8gyNSWIBnHmA9UWuF0lcHGiOy82S0%3D”, :“responseHeaders”: :{ ::“Content-Language”:“en-AU”, ::“日期”:“星期四,2015年11月12日05:59:50 GMT”, ::“Content-Length”:“6759”, ::“过期”:“0”, ::“Content-Type”:“text / html; charset = ISO-8859-1”, ::“X-Powered-By”:“Servlet / 3.0”, ::“Cache-Control”:“no-cache”, ::“Pragma”:“no-cache” :}, :“AuthToken”:“AHWXZlUt6Rupm1FeBWGu2TEVHZemZwVGbmwmpVxXJR7TMhCA8pWN96ae”, :“statusCode”:200, :

我需要提取sesskey,mbParam和AuthToken值,并将它们作为列表发送到下一个请求体中。

在请求中,这些值显示为

[ “{\” JSESSIONID \ “:\” 0000gPQCV4FJ1NQvB8d4Ifd_P9I \”,\ “mbparam \”:\ “hDu7DhU%2FjA81TEjwbREmytgqIItmUS4b6rhEojYtcalv0PUs6iaewmtZu6U%3D \”,\ “MP-AUTH-TOKEN \”:\ “4fU7Bg20sRRUikHnzmZKcC4ZPyCjVxJnmm7QMnSm6mfT7GlqnySQS2YP \”} “]

enter image description here

如何处理这些值?

1 个答案:

答案 0 :(得分:0)

使用以下正则表达式提取器配置:

  • 参考名称:任何有意义的内容,即\["\{\\"jsessionid\\":\\"(.+?)\\",\\"mbparam\\":\\"(.+?)\\",\\"MP-AUTH-TOKEN\\":\\"(.+?)\\"\}"\]
  • 正则表达:

    $1$$2$$3$
  • 模板:${dynamicvalues_g1}

Regular Expression Extractor

将提取的值引用为:

  • ${dynamicvalues_g2} - 适用于jsessionid
  • ${dynamicvalues_g3} - 适用于mbparam
  • [ - 适用于MP-AUTH-TOKEN

Debug Sampler

在开发正则表达式时,请记住需要使用反斜杠转义以下字符:

  • {
  • \
  • }
  • ]
  • .^$*+?()|

需要转义的其他特殊字符是:{{1}}

参考文献: