jmeter组件之JSON Path Extractor(Jason路径提取器)

有个小游戏礼包测试,开始游戏接口会返回当前场次所有礼包ID(一个Jason串),用户每次点击礼包,前端会随机调用打开礼包接口携带礼包ID

为了自动化测试,则必须要解析开始游戏接口返回所有礼包ID,在打开礼包接口中引用

此时可以使用JSON Path Extractor

1、安装 Json Path Extractor插件,用JSONPathExtractorExample.jmx (在官网下的一个testplan)这个打开后点击安装,提示安装成功。

2、此时在后置处理器中就可以看到该组件了

开始游戏响应:

{
    "code":1000,
    "message":"",
    "data":
    {
        "play_id":"50",
        "sign":"83d1c1f47aa7117fe9b438ad3d0b2e82",
        "play_count":"5",
        "expire_time":"30861",
        "countdown":0,
        "grab":"45",
        "list":
        [
            {
                "id":"1771",
                "count":"0"
            },
            {
                "id":"1772",
                "count":"0"
            },
            ...
            {
                "id":"1800",
                "count":"0"
            }
        ]
    },
    "agent":"Apache-HttpClient\/4.5.5 (Java\/10.0.2)",
    "client_type":"pc",
    "check_req_sign":0,
    "req_sign_str":"\/fighter\/startplay&Apache-HttpClient\/4.5.5 (Java\/10.0.2)&&&"
}

此时可以稍微测试一下

jmeter组件之JSON Path Extractor(Jason路径提取器)

jmeter组件之JSON Path Extractor(Jason路径提取器)

jmeter组件之JSON Path Extractor(Jason路径提取器)

3、在开始游戏接口添加后置处理器,选择Jason路径提取器

配置如下参数

Destination Variable Name:提取参数名,给下面接口引用

JSONPath Expression:提取表达式

Default Value:默认填0,变量为空时的默认值

jmeter组件之JSON Path Extractor(Jason路径提取器)

4、因为上面my_id提取出来是一个50位的字符串,所以我加了一个foreach循环调用

jmeter组件之JSON Path Extractor(Jason路径提取器)

5、后面拆礼盒中进行引用

jmeter组件之JSON Path Extractor(Jason路径提取器)

用例执行时,可以添加个debug sampler,查看参数值

jmeter组件之JSON Path Extractor(Jason路径提取器)