在 jmeter 中是否可以在不同的 BeanShell Sampler 中使用相同的变量?我的目标是将我的 Amazon Kinesis Java 应用程序(已转换)导入 Jmeter,但此代码的一部分是连接,我想在启动 jmeter 应用程序时设置一次。所以我必须在不同的 beanshell 中重新使用 AmazonKinesisClient 变量。可能吗?谢谢
PS:我对 JSONObject 有同样的问题,但在这种情况下,我使用了 jmeter 变量(将 json 存储为字符串)
在 jmeter 中是否可以在不同的 BeanShell Sampler 中使用相同的变量?我的目标是将我的 Amazon Kinesis Java 应用程序(已转换)导入 Jmeter,但此代码的一部分是连接,我想在启动 jmeter 应用程序时设置一次。所以我必须在不同的 beanshell 中重新使用 AmazonKinesisClient 变量。可能吗?谢谢
PS:我对 JSONObject 有同样的问题,但在这种情况下,我使用了 jmeter 变量(将 json 存储为字符串)
如果两个 beanshell 采样器都在同一个线程中,则它们之间共享 beanshell 变量。
vars.putObject("name",objectRef);
vars.getObject(“name”);
您可以bsh.shared
按照JMeter 最佳实践指南的共享变量一章使用命名空间。
在第一个采样器中:
JSONObject myObject = new JSONObject();
....
bsh.shared.myObject = myObject;
在第二个(或其他)采样器中:
JSONObject myObject = bsh.shared.myObject;
有关更多 Beanshell 提示和技巧,请参阅如何使用 BeanShell:JMeter 最喜欢的内置组件指南。