Jmeter:如何从json数组中提取第一个元素

时间:2017-05-10 19:40:25

标签: jmeter

我试图从json数组中提取第一个元素。下面提到的是json数组

   [
    {
        "cohortDefinition": {
            "Key": 1151,
            "id": 1798,
            "srcId": "3526",
            "pcKey": -1,
            "userName": "CHROME_USER",
            "name": "JMeter2017-01-06-1483749546167",
            "Type": "SUBJECT",
            "tool": "CB",
            "count": 32757,
            "extractionStatus": "",
            "dateCreated": "2017-05-10T17:48:45Z"
        },
        "datasource": {
            "id": 2,
            "name": "health",
            "subjectCount": 116352
        },
        "project": {
            "id": 747,
            "name": "Jmeter Project"
        }
    },
    {
        "cohortDefinition": {
            "Key": 1150,
            "id": 1796,
            "srcId": "3525",
            "pcKey": -1,
            "userName": "CHROME_USER",
            "name": "JMeter2016-10-27-1477620919644",
            "Type": "SUBJECT",
            "tool": "CB",
            "count": 32757,
            "extractionStatus": "",
            "dateCreated": "2017-05-10T16:57:11Z"
        },
        "datasource": {
            "id": 2,
            "name": "health",
            "subjectCount": 116352
        },
        "project": {
            "id": 747,
            "name": "Jmeter Project"
        }
    }
]

从json上面我想提取第一个值,即。 srcId“:”3526“。 我尝试在Jmeter提取器中执行以下表达式

$..cohortDefinition.srcId[1]

然而它不起作用。如果有人知道怎么做,请告诉我。

2 个答案:

答案 0 :(得分:0)

在JMeter 3.0之后,您可以使用JSON Extractor,请参阅:

在JMeter 3.0之前:

请按照以下步骤检索srcId

  1. 在您的请求中添加JSON Path Extractor并配置以下值。
  2.   

    目标变量名称 - myVar

         

    JSON路径表达式 - $..cohortDefinition.srcId - 这将从JSON中提取所有srcID。

         

    默认值 - Not FoundErr

    JSON Path Config

    1. 在测试计划中添加Debug SamplerView Results Tree

    2. 保存并执行。

    3. Debug Sampler中,您可以查看所有srcId,如下所示。

    4. Output

        

      您现在可以在测试计划中使用myVar_1myVar_2   使用${myVar_1} ${myVar_2}

答案 1 :(得分:0)

不需要插件,JMeter有JSON Extractor将提供此功能:

JSON Extractor configuration

注意:

  

JSON路径表达式是:$ .. cohortDefinition.srcId

     

比赛编号:1