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

Jmeter:如何从json数组中提取第一个元素,jmeter,Jmeter,我试图从json数组中提取第一个元素。下面提到的是json数组 [ { "cohortDefinition": { "Key": 1151, "id": 1798, "srcId": "3526", "pcKey": -1, "userName": "CHROME_USER", "name": "JMeter2017-01-

我试图从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]

但是,它不起作用。如果有人知道如何操作,请务必让我知道。

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

在JMeter 3.0之前:

请按照以下步骤检索
srcId

  • 向您的请求添加一个
    JSON路径提取器
    ,并配置以下值
  • 目标变量名称-
    myVar

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

    默认值-
    未找到
    错误

  • 调试采样器
    查看结果树
    添加到测试计划中

  • 保存它并执行

  • Debug Sampler
    中,您可以查看所有
    srcId
    ,如下所示

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


    不需要插件,JMeter有一个可提供此功能的插件:

    注意:

    JSON路径表达式为:$…cohortDefinition.srcId

    第1场


    使用
    $…cohortDefinition.srcId
    JSON路径提取器中
    myVar_1
    将具有第一个
    srcId
    。我尝试了该选项。结果是3526和3525Yes。您需要在测试计划中使用
    myVar_1
    ,该测试计划将首先检索
    srcId
    。请检查此图像,此操作正常。谢谢纳文地段