jmeter-Beanshell后处理器

jmeter-Beanshell后处理器,jmeter,Jmeter,在日志中获取以下错误: 2020-06-24 13:23:51091错误o.a.j.u.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr是如何…'':类型化变量声明:尝试解析方法:getName()关于未定义的变量或类名:sampler 2020-06-24 13:23:51091 WARN o.a.j.e.BeanShell后处理器:BeanShell脚本中的问题:org.apache.jorp

在日志中获取以下错误:

2020-06-24 13:23:51091错误o.a.j.u.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr是如何…'':类型化变量声明:尝试解析方法:getName()关于未定义的变量或类名:sampler 2020-06-24 13:23:51091 WARN o.a.j.e.BeanShell后处理器:BeanShell脚本中的问题:org.apache.jorphan.util.JMeterException:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr…“”:类型化变量声明:尝试解析未定义变量或类名的方法:getName():sampler 2020-06-24 13:23:51154错误o.a.j.u.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联求值:/,在jmeter.log中输出执行流,以帮助演示scr如何…“”:类型化变量声明:尝试解析方法:getName()关于未定义的变量或类名:sampler 2020-06-24 13:23:51154 WARN o.a.j.e.BeanShellPostProcessor:BeanShell脚本中的问题:org.apache.jorphan.util.JMeterException:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr…“”:类型化变量声明:尝试解析未定义变量或类名的方法:getName():sampler 2020-06-24 13:23:51236错误o.a.j.u.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr如何…“”:类型化变量声明:尝试解析方法:getName()关于未定义的变量或类名:sampler 2020-06-24 13:23:51236 WARN o.a.j.e.BeanShell后处理器:BeanShell脚本中的问题:org.apache.jorphan.util.JMeterException:调用bsh方法时出错:eval源文件:内联求值:/,以在jmeter.log中输出执行流,以帮助演示scr…“”:类型化变量声明:尝试解析未定义变量或类名为sampler的方法:getName()

下面是Beanshell后处理器中使用的代码

import java.text.DecimalFormat;
import java.text.DateFormat;
import java.text.SimpleDateFormat;

int tdNumber = ctx.getThreadNum();
int noThreads = ctx.getThreadGroup().getNumThreads();
long tdstart = ctx.getThread().getStartTime();
long tdEnd = ctx.getThread().getEndTime();
String respCode = ctx.getPreviousResult().getResponseCode();
String respCode = ctx.getPreviousResult().getResponseMessage();
String samplerName = sampler.getName();


Date date = new Date();
date.setDate(date.getDate());
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");
String formattedDate = df.format(date);

log.info("sampler::"+ sampleName +"....ThreadNo::"+ (tdNumber + 1) +" ....Starttime::"+ formattedDate +
"....StatusCode::" + respCode +"....TotalThreads::"+ noThreads +" ....Iterationno::"+vars.getIteration());
移动到最佳实践,并包括
sampler

强烈建议迁移到JSR223后处理器+Groovy,以提高性能、支持新的Java功能和有限的BeanShell库维护

移动到最佳实践,并包括
sampler

强烈建议迁移到JSR223后处理器+Groovy,以提高性能、支持新的Java功能和有限的BeanShell库维护

未定义的变量或类名:sampler

Beanshell后处理器中没有
采样器
速记,您应该使用以下选项之一:

  • prev.getSampleLabel(false)
  • ctx.getCurrentSampler().getName()

也应注意,从JMeTM 3.1开始,您应该使用,因此考虑在下一个可用的机会迁移到Groovy。

有关此
ctx
prev
和朋友的更多信息:

未定义的变量或类名:sampler

Beanshell后处理器中没有
采样器
速记,您应该使用以下选项之一:

  • prev.getSampleLabel(false)
  • ctx.getCurrentSampler().getName()

也应注意,从JMeTM 3.1开始,您应该使用,因此考虑在下一个可用的机会迁移到Groovy。


有关此
ctx
prev
和朋友的详细信息:

请帮助解决上述问题。@pavizham Beanshell后处理器中没有可用的采样器,请参阅中的link@pavizham如果这有助于你接受和/或投票,看看上面的问题是什么,请帮忙。@pavizham Beanshell后处理器中没有可用的采样器,请参阅link@pavizham如果这有助于您接受和/或投票,请参阅“感谢”以获取相关信息,还有一个问题是如何在groovy中获取示例的开始时间?它与原始问题无关,而且您似乎没有注意到提供的文档。作为一个例外:
prev.getStartTime()
感谢您提供的信息,还有一个问题是如何在groovy中获取示例的开始时间?它与原始问题无关,您似乎没有注意到提供的文档。例外情况是:
prev.getStartTime()