jmeter beanshell调用jmeter函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jmeter beanshell调用jmeter函数相关的知识,希望对你有一定的参考价值。

我配置了HTTP请求采样器。在请求体中,我调用了一个我编写的beanshell函数:

${__BeanShell(createHeader("GET","Customer","${__UUID}","${__time(yyyy-MM-dd'T'hh:mm:ss)}"))}

该函数只是使用传入的参数构建一些请求字符串。我想删除jmeter函数调用(__UUID和__time),并直接从beanshell函数中调用它们。我找不到办法做到这一点。谢谢

答案
  1. 不要将JMeter Functions or Variables内联到脚本中,在您的情况下,您将不得不使用基于代码的等价物,例如: __UUID() - > UUID.randomUUID().toString() __time() - > new java.text.SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss").format(new Date())
  2. Since JMeter 3.1 it's recommended to use JSR223 Test Elements and Groovy language用于编写脚本,在你的情况下它将是__groovy() function。如果要重新使用createHeader方法 - 可以将其放入单独的.groovy文件中并定义指向此文件的groovy.utilities property。 有关在JMeter测试中使用Groovy脚本的更多信息,请参阅Apache Groovy - Why and How You Should Use It文章。

以上是关于jmeter beanshell调用jmeter函数的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter BeanShell调用接口

Jmeter-BeanShell Sampler调用java代码

jmeter使用详解

jmeter使用详解

jmeter中的beanshell里怎么判断两个值大小

JMeter基础 — JMeter中BeanShell断言详解