jmeter - 如何从 JMeter 的 ForEach 控制器中的变量中获取对象
问题描述
假设我在最后一个请求的后 beanshell 处理器上设置了一个列表。
List list = Arrays.asList("a","b");
vars.putObject("list", list);
如何将每个列表值应用于 ForEach Contoller 中的请求?谢谢!
解决方案
ForEach Controller不能对对象进行操作,您必须以以下形式创建JMeter 变量:
var_1=a var_2=b
您可以使用JMeterVariables类实例
vars
的简写来创建 JMeter 变量,例如:vars.put("var_1", "a"); vars.put("var_2", "b");
然后您可以配置 ForEach 控制器以使用
var
前缀并将输出存储到${current_var}
JMeter 变量中:就是这样,ForEach 控制器将迭代创建的变量:
请注意,从 JMeter 3.1 开始,建议使用 JSR223 测试元素和 Groovy 语言编写脚本,因为Groovy 性能比 Beanshell 好得多。此外,Groovy 是更“现代”的语言,它支持所有新的 Java 特性,并在标准 Java SDK 之上提供额外的功能。
推荐阅读
- keycloak - Keycloak 在登录过程中添加动态用户会话注释
- jekyll - 根据文档,jekyll 不会将 site.url 转换为 http://localhost:4000
- qt - 避免 QML 错误:“这可能是一个信号处理程序,但没有目标信号与名称匹配。”
- node.js - VS Code - 从 node.js 项目生成 UML
- node.js - 使用 NodeJS 在 Cloud Functions 中编写 Cloud Monitoring 指标
- r - 如何制作一个 ggplot2 条形图,显示我的数据框列中的一和二的数量?
- c# - 与 c# 的 ASPX 连接
- python - 需要帮助理解 sorted(x for x in os.listdir(path)) 表达式
- reactjs - 如何在 Gitlab CI 期间替换公用文件夹?
- amazon-web-services - 无法获取 TableName 无服务器框架:参数中缺少必需的键 'TableName'