无法使用json路径测试仪Jmeter分析响应

无法使用json路径测试仪Jmeter分析响应,jmeter,Jmeter,无法分析包含“\”的响应 尝试使用正则表达式提取器和BeanShell后处理器 步骤如下: 在正则表达式提取器中添加以下正则表达式(以检索日期值): 添加BeanShell代码,如下所示(删除第一个匹配中的“\”): 图像参考: 1.正则表达式提取器 2.比恩希尔 3.查看结果树 尝试上面的代码,删除“\”,当我想传递${SummaryID\u 1}时,post请求不起作用。你的json不正确,你得到了这种类型的响应吗?请提供你想要解析的完整json响应。@PradeepDeshmukh是的,

无法分析包含“\”的响应


尝试使用
正则表达式提取器
BeanShell后处理器

步骤如下:

正则表达式提取器中添加以下正则表达式(以检索日期值):

添加BeanShell代码,如下所示(删除第一个匹配中的“\”):

图像参考: 1.正则表达式提取器 2.比恩希尔 3.查看结果树


尝试上面的代码,删除“\”,当我想传递${SummaryID\u 1}时,post请求不起作用。

你的json不正确,你得到了这种类型的响应吗?请提供你想要解析的完整json响应。@PradeepDeshmukh是的,我得到了这种类型的响应,我想从中解析日期您可以解析它,但在解析之前,请替换字符串中的“\”,然后使用JSON解析器进行解析。PradeepDeshmukh请提供详细信息Date对象有多个dateschange
匹配号。
值到
-1
以捕获所有值。稍后,您可以通过
${date_1}
${date_2}
等方式访问它们。通过将
vars.get(“date”)
替换为
vars.get(“date_1”)
以获取第一个匹配项来更新BeanShell代码。在org.apache.log.logger类中找不到方法调用java.lang.string中的错误请在问题中添加您正在使用的BeanShell代码。答案中的BeanShell代码,为我工作。我可以删除forawrds斜杠,但当我传递到下一个post请求${date\u 1}时,值没有被转换,显示错误已通过在下一个post请求中添加${date\u format1}和${date\u format1}解决
{"Content":"[{\"SummaryID\":\"402014189352\",\"PeriodID\":\"3079\",\"PeriodName\":\"Q3 16\",\"SummaryData\":[{\"SummaryID\":\"402014189352\",\"Date\":\"11\/11\/2016\",\"RawMatrixData\":\"{\\\"LstEstimateInfo\\\":[{\\\"TemplateID\\\":402014189251,\\\"SummaryID\\\":402014189352,\\\"TemplateName\\\":\\\"Template_201611119\\\",\\\"TemplateDate\\\":\\\"11\/11\/2016 08:48:09\\\",\\\"SelfServe\\\":true}],\\\"LstPeriodList\\\":[{\\\"PeriodName\\\":\\\"Q1
"Date\\":\\"(.*?)"
String str1=vars.get("date_1").toString();
log.info("Before " + str1);
String temp = str1.replace("\\","");
log.info("After " + temp);
vars.put("date_formatted", temp);
String str1=vars.get("SummaryID").toString();
String str2=vars.get("TemplateID").toString();
log.info("Before " + str1);
log.info("Before " + str2);
java.lang.String temp = str1.replace("\\","");
java.lang.String temp1 = str2.replace("\\","");
log.info("After " + temp);
log.info("After " + temp1);
vars.put("date_format1", temp);
vars.put("date_format2", temp1);