【问题标题】:Jmeter: How to use ArrayList in Jmeter, Beanshell Sampler?Jmeter:如何在 Jmeter、Beanshell Sampler 中使用 ArrayList?
【发布时间】:2024-05-16 04:20:02
【问题描述】:

如何在Beanshell Sampler-Jmeter中使用数组列表?

【问题讨论】:

  • 您能否投资格式化您的问题以使其可读?例如,rs.fetchAns("1") 是什么 - 我们没有您的源代码,因此我们不知道该代码的含义或返回的内容。然后return type is string. - 这是你得到的例外还是什么?
  • 问题已更正........@Kiril

标签: performance jmeter performance-testing load-testing blazemeter


【解决方案1】:

就像在Java 中一样,即以下代码:

ArrayList myList = new ArrayList();
myList.add("something");
myList.add("something else");

for (int i = 0; i < myList.size(); i++) {
  log.info(myList.get(i));
}

myList 的内容打印到 jmeter.log 文件:


请记住,Beanshell 不支持Generics,因此请避免使用菱形运算符,否则会出错。如果没有特别的理由坚持使用 Beanshell,我建议考虑切换到 JSR223 Test ElementsGroovy 语言 - 请参阅 Beanshell vs JSR223 vs Java JMeter Scripting: The Performance-Off You've Been Waiting For! 指南以获取解释、基准和脚本编写最佳实践。

【讨论】:

  • 谢谢德米特里。我正在使用泛型 角括号并出现错误。感谢您提及这些,以避免在 Jmeter Beanshell 中使用。
【解决方案2】:

您可以在 beshell 中轻松使用 arraylist。它与Java相同,因此为ArrayList导入一个包,然后创建ArrayList对象。

//importing arraylist package from java
import java.util.ArrayList;

//creating arraylist object
ArrayList lines = new ArrayList();

【讨论】: