jmeter运行日志 报错信息排查

发布时间 2023-03-22 21:11:44作者: BKY007-谢志飞

023-03-21 16:08:23,712 ERROR o.a.j.u.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import java.util.*; import java.lang.*; String riqi =prev.getResponseDataAsStri . . . '' : Error in method invocation: Method put( java.lang.String, int ) not found in class'org.apache.jmeter.threads.JMeterVariables'
2023-03-21 16:08:23,712 WARN o.a.j.e.BeanShellPostProcessor: Problem in BeanShell script: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import java.util.*; import java.lang.*; String riqi =prev.getResponseDataAsStri . . . '' : Error in method invocation: Method put( java.lang.String, int ) not found in class'org.apache.jmeter.threads.JMeterVariables'
2023-03-21 16:08:23,942 INFO o.a.j.u.BeanShellTestElement: 提取JDBC请求返回的商品编码:VP1678765812906905

 

 

 

 

import java.util.*;
import java.lang.*;

String riqi =prev.getResponseDataAsString();//获取响应结果
String year=riqi.substring(6,10);//截取年份
String month=riqi.substring(10,12);//截取月份
String date=riqi.substring(12,14);//截取日

String birthday=year+"-"+month+"-"+date;//拼接日期格式
log.info("出生日期:"+ birthday); //出生日期输出日志
vars.put("Mytest_birthday", birthday); //传递身份证上的出生日期

Long Ldate = System.currentTimeMillis();
Date date1 = new Date(Ldate);
int year_now=date1.getYear()+1900; //当前年
int month_now=date1.getMonth()+1;//当前月
int date_now=date1.getDate();//当前日

log.info("打印当前年整型:"+ year_now);
log.info("打印当前月整型:"+ month_now);
log.info("打印当前日整型:"+ date_now);

int year_birth=Integer.parseInt(year); //字符串转换为整型
int month_birth=Integer.parseInt(month);
int date_birth=Integer.parseInt(date);
log.info("打印出生年整型:"+ year_birth);
log.info("打印出生月整型:"+ month_birth);
log.info("打印出生日整型:"+ date_birth);

age=year_now-year_birth; //年龄计算
if (month_now<=month_birth)
if(month_now==month_birth){
if(date_now<date_birth)
age=age-1;
}
else{
age=age-1;
}
String my_age =
log.info("打印出生年龄整型:"+ age);
log.info("患者年龄:"+ age); //出生年龄
vars.put("Mytest_age", age);//年龄传递

----------------------------------

最后发现是这行代码出现了问题:

vars.put("Mytest_age", age);//年龄传递

这个age是一个整型,要传 字符串类型

在上面加    String str_age = Integer.toString(age);//整型转换为字符串类型 再传参,由于vars.put()接收的是字符串类型