如何在BeanShell中验证json响应,并在响应与jmeter中预期的不一致的情况下执行一些操作?
我想在jmeter中提取json响应,如果响应不符合预期,我需要将其打印到csv文件中 我尝试使用contains方法检查响应是否包含预期的关键字,但它似乎不起作用。我还有别的办法吗 此处的示例代码:如何在BeanShell中验证json响应,并在响应与jmeter中预期的不一致的情况下执行一些操作?,jmeter,beanshell,Jmeter,Beanshell,我想在jmeter中提取json响应,如果响应不符合预期,我需要将其打印到csv文件中 我尝试使用contains方法检查响应是否包含预期的关键字,但它似乎不起作用。我还有别的办法吗 此处的示例代码: log.info(ctx.getPreviousResult().getResponseDataAsString()); r = ctx.getPreviousResult().getResponseCode(); d = ctx.getPreviousResult().getResponse
log.info(ctx.getPreviousResult().getResponseDataAsString());
r = ctx.getPreviousResult().getResponseCode();
d = ctx.getPreviousResult().getResponseDataAsString();
if(!d.contains("valid")){
p.println(r +","+ vars.get("email") +",");
}
这是我的json响应
{
"isBlueLinkServicePinValid": "valid"
}
我正在检查关键字“valid”
但它似乎不起作用
短暂性脑缺血发作
isBlueLinkServicePinValid
属性值:
String response = prev.getResponseDataAsString();
log.info("Response: " + response)
String valid = new groovy.json.JsonSlurper().parseText(response).isBlueLinkServicePinValid
log.info("Valid: " + valid);
if (valid.equals("valid")) {
log.info("Do something");
}
else {
log.info("Do something else");
}
演示:
String response = prev.getResponseDataAsString();
log.info("Response: " + response)
String valid = new groovy.json.JsonSlurper().parseText(response).isBlueLinkServicePinValid
log.info("Valid: " + valid);
if (valid.equals("valid")) {
log.info("Do something");
}
else {
log.info("Do something else");
}