首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jmeter json路径提取器-我们如何从所有捕获的变量中获取随机值?

Jmeter json路径提取器-我们如何从所有捕获的变量中获取随机值?
EN

Stack Overflow用户
提问于 2017-03-03 18:09:13
回答 2查看 3.3K关注 0票数 1

在jmeter中,我使用Jmeter json路径提取器捕获变量。它捕获了大约7-10个值,如何从所有捕获的值中传递任何随机值?

EN

回答 2

Stack Overflow用户

发布于 2017-03-03 18:17:17

使用JSON Extractor (从3.0版本开始),它是JMeter中内置的post-processor。语法类似于JSON Path Extractor,因此您可以重用已配置的JSON Path Expression

random value指定Match Numbers to 0

来自文档:

Match Numbers如果JSON路径查询产生很多结果,您可以选择提取其中的一个或哪些作为变量:

  • 0 :表示随机(默认值)
  • -1表示提取所有结果,它们将被命名为_N (其中N从1到结果数)
  • X:表示提取第X个结果。如果这个第X值大于匹配数,则不返回任何内容。默认值将使用
票数 1
EN

Stack Overflow用户

发布于 2017-03-03 19:07:23

例如,您有以下JSON响应:

代码语言:javascript
复制
{
  "employees": [
    {
      "firstName": "John",
      "lastName": "Doe"
    },
    {
      "firstName": "Anna",
      "lastName": "Smith"
    },
    {
      "firstName": "Peter",
      "lastName": "Jones"
    }
  ],
  "city": "Castle Rock",
  "state": "Maine"
}

您可以使用JSON Path Extractor通过以下表达式获取firstName$..firstName。它会产生以下JMeter变量

代码语言:javascript
复制
firstName=["John","Anna","Peter"]
firstName_1=John
firstName_2=Anna
firstName_3=Peter
firstName_matchNr=3

现在,您可以使用__Random()__V()函数组合来获取随机变量,如下所示:

代码语言:javascript
复制
${__V(firstName_${__Random(1,${firstName_matchNr},)})}

演示:

有关该方法的更多详细信息,请参阅Here’s What to Do to Combine Multiple JMeter Variables文章。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42576009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档