将 Jmeter JSR223 脚本存储在变量中

Store a Jmeter JSR223 script in a variable

我有一个包含许多 HTTP 请求的 Jmeter 脚本,每个请求都有一个 JSR223 预处理器。大多数预处理器都有通用代码,我想从一个地方引用该代码,不一定是函数,而是在所有预处理器中重复的一大段代码。我已经尝试了一些东西,我在 Jmeter 文档中遇到了将脚本存储在 JSR223 采样器中然后存储在变量中然后使用 ${__groovy(${RANDOM_NAME})}.

https://jmeter.apache.org/usermanual/best-practices.html#developing_scripts

https://jmeter.apache.org/usermanual/functions.html#how

我找不到在真实脚本中运行的任何示例。我了解其中的大部分内容,但我不确定“它如何作为变量存储在测试计划中”。我在线程组中的 JSR223 示例中有代码,该线程组先于所有其他线程组调用,但我不确定如何将其存储为变量。有人可以给我看一个工作示例吗?

我认为更合适的解决方案是在 JSR223 采样器中使用相同的 Script File

Script File

Name of a file to be used as a JSR223 script, if a relative file path is used, then it will be relative to directory referenced by "user.dir" System property

但您可以将脚本保存为 JMeter 属性,例如 user.properties

  MyScript=[script]

并在测试计划中定义一个值为${__P(MyScript)}

的变量

关于如何将脚本存储到变量中有很多选项。