使用预处理器将长值存储到 Jmeter 中的变量,并在采样器中 print/use 存储相同的值
Store a long value to a variable in Jmeter using preprocessor and print/use the same value in a sampler
以下是我遵循的步骤,
1) 添加了一个 BeanShell 采样器,并向同一采样器添加了一个 Bean Shell 预处理器。
long c = 25478995L;
log.info(c + " - It is long");
vars.put("c",c)
2) 我正在尝试在 Bean Shell 采样器中打印值 c,如下所示,
${c}
3) 但是当我在视图结果树中看到时,我得到的是 ${c} 而不是我期望查看 25478995。
谁能帮帮我。
提前致谢。
此致,
哈里
您需要在 vars.put 方法中将长数字转换为字符串。
有 2 种方法可以做到这一点
您可以使用 String.valueOf() 方法来做到这一点
long c = 25478995L;
vars.put("c",String.valueOf(c));
或者简单地将 long 值附加到字符串。
long c = 25478995L;
vars.put("c",c+"");
您可以关注 this blogs 获取此类信息
您可以使用以下:-
BeanShell 预处理器
long c = 25478995L;
log.info(c + " - It is long");
vars.put("x",c.toString());
BeanShell 采样器
log.info("Value of x==="+vars.get("x"));
如果您想存储一个 Long per se you need to use vars.putObject() 函数而不是像:
vars.putObject("c", c);
及以后:
log.info("My long value is: " + vars.getObject("c"));
如果你想要String representation - you need to convert your Long to String first喜欢:
vars.put("c", Long.toString(c));
- 不要在脚本中引用像
${c}
这样的变量,而是使用 vars.get("c");
或 vars.getObject("c");
- 从 JMeter 3.1 开始,我t is recommended to use JSR223 Test Elements and Groovy language rather than Beanshell for performance reasons, see Apache Groovy - Why and How You Should Use It 了解更多详细信息。
以下是我遵循的步骤, 1) 添加了一个 BeanShell 采样器,并向同一采样器添加了一个 Bean Shell 预处理器。
long c = 25478995L;
log.info(c + " - It is long");
vars.put("c",c)
2) 我正在尝试在 Bean Shell 采样器中打印值 c,如下所示,
${c}
3) 但是当我在视图结果树中看到时,我得到的是 ${c} 而不是我期望查看 25478995。
谁能帮帮我。 提前致谢。
此致, 哈里
您需要在 vars.put 方法中将长数字转换为字符串。 有 2 种方法可以做到这一点
您可以使用 String.valueOf() 方法来做到这一点
long c = 25478995L;
vars.put("c",String.valueOf(c));
或者简单地将 long 值附加到字符串。
long c = 25478995L;
vars.put("c",c+"");
您可以关注 this blogs 获取此类信息
您可以使用以下:-
BeanShell 预处理器
long c = 25478995L;
log.info(c + " - It is long");
vars.put("x",c.toString());
BeanShell 采样器
log.info("Value of x==="+vars.get("x"));
如果您想存储一个 Long per se you need to use vars.putObject() 函数而不是像:
vars.putObject("c", c);
及以后:
log.info("My long value is: " + vars.getObject("c"));
如果你想要String representation - you need to convert your Long to String first喜欢:
vars.put("c", Long.toString(c));
- 不要在脚本中引用像
${c}
这样的变量,而是使用vars.get("c");
或vars.getObject("c");
- 从 JMeter 3.1 开始,我t is recommended to use JSR223 Test Elements and Groovy language rather than Beanshell for performance reasons, see Apache Groovy - Why and How You Should Use It 了解更多详细信息。