BeanShell中使用fastjson获取json对象的值

前置条件

下载fastjson的jar包,并将该jar包添加到测试计划中
jar包.png

获取json对象的值

接口返回类容如下,我需要获取ticketId的值,可以看到这是一个json对象,因此只需导JSONObject。

{
    "result": {
        "requesterId": 8551072,
        "ticketNo": 2007008,
        "accessCode": "70EDF3FE598A1281",
        "ticketId": 8379831
    },
    "status": 0
}

备注:JSONObject可以用key取值,JSONArray只能遍历取值
{"key": "value"} //JSONObject(对象)
[{"key1": "value1"}, {"key2": "value2"}] //JSONArray(数组)

import com.alibaba.fastjson.JSONObject;
String ticketIdData=prev.getResponseDataAsString();
JSONObject json=JSONObject.parseObject(ticketIdData);
String result=json.get("result").getString("ticketId");
log.error(result);

在jmeter选项中勾选日志查看,设置日志级别为ERROR
运行结果

2020-07-28 13:55:19,114 ERROR o.a.j.u.BeanShellTestElement: 8379831

你可能感兴趣的:(BeanShell中使用fastjson获取json对象的值)