无法在日志文件和cmd中打印Beanshell响应

时间:2019-01-04 05:51:29

标签: cmd jmeter

我正在尝试在Beanshell PostProcessor中打印以下代码

但是我得到

Code         :  log.info(ctx.getPreviousResult.getTime());
Error Message:  Cannot access field: getPreviousResult

2 个答案:

答案 0 :(得分:1)

getPreviousResult是一种方法,因此语法为:

  

ctx.getPreviousResult()。getTime()

所以您的代码应该是:

  

log.info(“ {}”,ctx.getPreviousResult()。getTime());

答案 1 :(得分:1)

  1. JMeterContext.getPreviousResult()是一个函数,而不是字段,您需要在其后添加括号
  2. 您无法将Long值直接打印到 jmeter.log ,需要先将其强制转换为String
  3. prev的缩写代表父SampleResult,因此您实际上可以缩短代码

假设以上所有内容都将您的代码修改为:

log.info(prev.getTime().toString());

enter image description here


还要注意,starting from JMeter 3.1 it's recommended to use JSR223 Test Elements and Groovy语言主要是因为Groovy has much better performance comparing to Beanshell,所以考虑在下一个可用机会迁移到JSR223 PostProcessor时,就不必更改代码。