Jmeter 坎恩';如果我向beanshell后处理器添加uu intSum函数,则不会执行测试
我在我的线程中编写了一个正则表达式(Jmeter 坎恩';如果我向beanshell后处理器添加uu intSum函数,则不会执行测试,jmeter,beanshell,Jmeter,Beanshell,我在我的线程中编写了一个正则表达式(regexpname),它返回一个数字Ex:10,当我尝试在BeanShell后处理器中使用正则表达式时,通过添加\uu intSum函数向正则表达式out添加一个数字,例如:向正则表达式out添加4。,10并使用以下函数将结果存储到变量Ex:Total中: {__intSum(4,${regexpname},Total} 在尝试运行我的测试时,它会立即停止并显示消息 “Jmeter:未捕获异常:java.lang.NumberFormatException
regexpname
),它返回一个数字Ex:10,当我尝试在BeanShell后处理器中使用正则表达式时,通过添加\uu intSum
函数向正则表达式out添加一个数字,例如:向正则表达式out添加4。,10并使用以下函数将结果存储到变量Ex:Total中:
{__intSum(4,${regexpname},Total}
在尝试运行我的测试时,它会立即停止并显示消息
“Jmeter:未捕获异常:java.lang.NumberFormatException:For”
输入字符串:“${regexpname}”…”
请让我知道如何解决此问题:
以下是我在beanshell后处理器中输入的代码:
import java.text.SimpleDateFormat;
SimpleDateFormat sdf = new SimpleDateFormat("m/dd/yyyy"); // change it according to your Date format
Date originalDate = sdf.parse(vars.get("SigDate"));
Calendar cal = Calendar.getInstance();
cal.setTime(originalDate);
${__intSum(4,${regexpname},Total)};
cal.add(Calendar.DAY_OF_YEAR, Total); // change it if you need to add something else
Date newDate = cal.getTime();
vars.put("newDepdate", sdf.format(newDate));
log.info("Original date: " + vars.get("SigDate"));
log.info("New date: " + vars.get("newDepdate"));
使用
inttotal=Integer.parseInt(vars.get(“regexpname”))+4
而不是${{uuu intSum(4,${regexpname},Total)}代码>在您的
我在测试计划中将regexpname
定义为10,这样它就增加了14天,并将新日期存储在newDepdate
中
有关beanshell的更多信息,请点击
如果有帮助,请告诉我
因为它们可能会导致脚本失败或行为不一致。要么使用“参数”部分,要么使用基于代码的等效项
不要使用Beanshell测试元件
如果你需要“一年中的一个月”的话,你的名字看起来很古怪,因为m
代表“一小时中的分钟数”——用大写字母m
实际上,这里甚至不需要任何脚本,因为它可以做您需要的事情,相关语法如下: