如何在JMeter中从AMQP请求中提取数据

问题描述 投票:-1回答:1

我已经使用AMQP Publisher在RabbitMQ中发布消息,然后使用AMQP Consumer作为侦听器。在“查看结果树”中,来自队列的消息显示在AMQP使用者的“请求”选项卡中。我的问题是如何从该请求中提取数据。我尝试了跟随Bean Shell后处理器,但它似乎仅适用于Http请求。我尝试使用JSR223后处理器和XPath提取器,但效果不佳。有帮助吗?

我想从请求中提取documentId。这是Request模式。

我已经尝试了以下链接:Extracting value from jmeter post requesthow to extract value from request in JmeterHow to extract the values from request input xml in jmeter

jmeter amqp
1个回答
0
投票
  1. 没有共享代码就尝试了某些事情的说法没有道理
  2. 将JSON数据或代码作为图像发布不是最好的主意

是否有理由从请求中提取数据?通常,人们了解有关该请求的所有信息,因此不需要从中提取任何信息。即使他们这样做,他们通常也应该能够将请求数据存储到JMeter Variable中并对其应用相关的Post-Processor

无论如何,以防万一,这是解决方案:

  1. 添加JSR223 PostProcessor(如果您真的想使用后处理器执行此操作)作为请求的子项
  2. 将以下代码放入“脚本”区域:

    vars.put('foo', com.jayway.jsonpath.JsonPath.read(sampler.getArguments().getArgument(0).value,'$..documentId')[0])
    
  3. 就是这样,您应该可以在需要时以${foo}的形式访问提取的值。

参考:

© www.soinside.com 2019 - 2024. All rights reserved.