jmeter - 在 JMeter 中使用 JMeterUtils.getProperty 与 __P 有何优缺点?

标签 jmeter beanshell

我正在制定一些使用 BeanShell 断言的 JMeter 测试计划。在这些断言中,我想访问一些用户属性。有多种方法可以访问它们:

JMeterUtils.getProperty("propertyName")
${__P(propertyName)
props.get("propertyName")

每个选项的差异在哪里以及优缺点是什么?它们是彼此的包装还是具有特定的功能?

谢谢!

最佳答案

从功能上来说,它们都是完全相同的。它们甚至以相同的方式实现 - 它们都调用当前 jmeter 属性对象上的 getProperty() 方法。

区别在于您使用它们的位置。

  1. 将变量放入 JMeter GUI 文本框中时使用 ${} 表示法。例如,在 HTTP 采样器的字段中。注意,__P是简写,与__Property完全相同

  2. props.get() 用于 beanshell 脚本中,无需显式导入 JMeterUtils 。您还可以组合 1&2 来执行 ${__BeanShell(props.get())}

  3. 如果您在 beanshell 中导入 JMeterUtils ,或者您正在开发自定义 java 类,那么您将使用 JMeterUtils.getProperty()

在这三个中,我认为#1是最有效的,因为它不需要实例化和评估beanshell

关于jmeter - 在 JMeter 中使用 JMeterUtils.getProperty 与 __P 有何优缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33692349/

相关文章:

c# - 想要编写 C# 应用程序脚本

java 收到不正确的 BeanShell 结果

node.js - 如何使用 Node JS 和 Mongodb 进行加载测试

jmeter - 如何在jMeter中使用不同的输入进行多个用户登录?

JMeter测试计划登录问题

intellij-idea - 寻找 : IntelliJ IDEA plugin with BeanShell syntax support

JMeter:使用 JDBC 请求将记录插入数据库

amazon-web-services - 在存在连接问题的 AWS 中设置 JMeter 以进行分布式测试

java - Collections.sort 未按预期对 ArrayList 进行排序 [beanshell、Java、JMeter]

java - 与 Beanshell 的 JDBC 连接