Json提取唯一数据-Jmeter
我的线程组中有一组请求,其中第一个请求将为第二个请求提供输入。我使用json提取器(匹配号0)从列表中提取值。我希望确保在线程1中提取的相同数据不会在后续线程运行中提取。你能建议如何处理这个问题吗。按照 如果JSON路径查询导致许多结果,您可以选择提取哪一个作为变量:Json提取唯一数据-Jmeter,jmeter,jmeter-plugins,Jmeter,Jmeter Plugins,我的线程组中有一组请求,其中第一个请求将为第二个请求提供输入。我使用json提取器(匹配号0)从列表中提取值。我希望确保在线程1中提取的相同数据不会在后续线程运行中提取。你能建议如何处理这个问题吗。按照 如果JSON路径查询导致许多结果,您可以选择提取哪一个作为变量: 0:表示随机(默认值) “随机”不能保证唯一性,所以如果您需要数据是唯一的-考虑提供一个递增的值给这个“匹配no”字段。 设置示例: 给定以下JSON { "store": { &quo
0
:表示随机(默认值)
“随机”不能保证唯一性,所以如果您需要数据是唯一的-考虑提供一个递增的值给这个“匹配no”字段。 设置示例:
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{
"category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{
"category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
},
"expensive": 10
}
-第一次迭代世纪格言
-第二次迭代荣誉之剑
- 等等
${__intSum(${__jm__Thread Group__idx},1,)}
其中,\uuuuujm\uuuuu线程组\uuuuu idx
是一个预定义的可用变量,因为它返回当前迭代,并且是一个JMeter函数,它将1
添加到迭代数中(因为它是基于零的)
完整的JSON提取器配置如下:
您好,感谢您的指导,我尝试了您提到的步骤,得到了以下错误:error o.a.j.t.JMeterThread:error when processing sampler:“Debug sampler”。java.lang.NumberFormatException:用于输入字符串:java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)~[?:1.8.0µ]at java.lang.Integer.parseInt(Integer.java:569)~[?:1.8.0181]at java.lang.Integer.parseInt(Integer.java:615)~[?:1.8.0181]。我只使用Jmeter 4.0线程组的名称是什么?如果它与
线程组不同
您需要修改变量,如${{uuuuujm\uuuuu put-your-Thread-Group-name-here\uuuuu idx}
我能够修复它。再次感谢您的支持!该逻辑适用于循环计数,但不适用于线程数。如果我有5个线程和一个循环计数,那么逻辑的工作原理与匹配号1相同