在 JSR223 断言中定义一个值并从不同线程中的用户定义变量访问它
Define a value in JSR223 Assertion and Access it from User Defined Variables in a Different Thread
这就是我想要的帮助,
使用 Jmeter -
- 设置一个
variable
在JSR223 Assertion
在1st thread
- 在
different threads
User Defined Variables
中访问该值
提前致谢
您可以使用以下方法:
props.put("var","value"); // 在第一个线程组中设置 属性
props.get("var"); // 在第 2 个线程组
中获取 属性
或者,您可以在 JMeter 中使用 "Inter-Thread Communication" 插件。
JMeter 变量是 local to the current thread only 因此您将无法访问当前线程(虚拟用户)上下文之外的值。
Properties are not the same as variables. Variables are local to a thread; properties are common to all threads
因此,如果您需要创建一些变量 "global",您可以将其转换为 属性,例如:
props.put('foo', 'bar')
在 JSR223 断言中
完成后,您应该能够在需要时使用 __P() function 作为 ${__P(foo,)}
访问该值
您也可以使用 __setProperty() function 而不是在 JSR223 断言中设置值。
有关 JMeter 函数概念的更多信息:Apache JMeter Functions - An Introduction
这就是我想要的帮助,
使用 Jmeter -
- 设置一个
variable
在JSR223 Assertion
在1st thread
- 在
different threads
User Defined Variables
中访问该值
提前致谢
您可以使用以下方法:
props.put("var","value"); // 在第一个线程组中设置 属性
props.get("var"); // 在第 2 个线程组
中获取 属性或者,您可以在 JMeter 中使用 "Inter-Thread Communication" 插件。
JMeter 变量是 local to the current thread only 因此您将无法访问当前线程(虚拟用户)上下文之外的值。
Properties are not the same as variables. Variables are local to a thread; properties are common to all threads
因此,如果您需要创建一些变量 "global",您可以将其转换为 属性,例如:
props.put('foo', 'bar')
在 JSR223 断言中
完成后,您应该能够在需要时使用 __P() function 作为 ${__P(foo,)}
访问该值
您也可以使用 __setProperty() function 而不是在 JSR223 断言中设置值。
有关 JMeter 函数概念的更多信息:Apache JMeter Functions - An Introduction