如何解决将 Jmeter JSR223 脚本存储在变量中
我有一个包含许多 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
脚本文件
要用作JSR223脚本的文件名,如果使用相对文件路径,那么它将相对于“user.dir”系统属性引用的目录
但是您可以将脚本保存为 JMeter 属性,例如在 user.properties 中
MyScript=[script]
并在测试计划中定义一个值为 ${__P(MyScript)}
关于如何将脚本存储到变量中有很多选项。
-
最简单、最直接的是使用 User Defined Variables
-
如果您的目标是使用 __groovy() function,则有一个 special property: groovy.utilities,您可以在其中指定包含“common " 代码
-
最后,您可以compile your "common" code into a .jar file,它可用于任何脚本元素,而且运行速度会更快。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。