如何在Jmeter中使用Beanshell验证Json响应?
我得到了Json作为回应。 我不想使用多个jsonPath_断言,而是想在单个beanshell中检查它。 每次我都会得到不同价值观的回应 我建议使用和 Groovy具有内置功能,因此您可以使用类来解析响应,如下所示:如何在Jmeter中使用Beanshell验证Json响应?,jmeter,beanshell,Jmeter,Beanshell,我得到了Json作为回应。 我不想使用多个jsonPath_断言,而是想在单个beanshell中检查它。 每次我都会得到不同价值观的回应 我建议使用和 Groovy具有内置功能,因此您可以使用类来解析响应,如下所示: def json = new groovy.json.JsonSlurper.parseText(prev.getResponseDataAsString()) // do what you need here 此外,Groovy的性能比Beanshell好得多,在JMeter
def json = new groovy.json.JsonSlurper.parseText(prev.getResponseDataAsString())
// do what you need here
此外,Groovy的性能比Beanshell好得多,在JMeter中使用Groovy编写脚本是非常必要的。有关更多信息,请参阅
你可以使用beanshell断言,它会给你很大帮助。
prev.getResponseDataAsString()
将以字符串形式返回json响应。
我希望您将使用Jsonpath online evaluator来评估json响应。
假设我的json在线计算器代码如下所示$.items[2].CM_SEQNUMBER
在beanshell断言中,我使用了
类似地,您可以使用单个beanshell断言验证JSON数据,而无需使用多个JSONPath提取器
感谢您的反馈
JsonObject jsonobj = JsonObject.readFrom(jsonString);
JsonArray jsonarr = jsonobj.get("items").asArray();
String pickupToCheck=jsonarr.get(2).asObject().get("CM_SEQNUMBER").asString();