JMeter |如何定义变量,使其作用域位于 BeanShell 中的 {thread, Thread-Group, Test-Plan} 中

问题描述 投票:0回答:1

我正在尝试编写一个测试计划,其中根据采样器上的文本生成自定义报告。我无法在这三个级别中正确地确定变量的范围。

loc = vars.get("local_count");

if (loc == null) {
   vars.put("local_count", "1"); //available only in local thread level
} else {
   temp = Integer.parseInt(loc) + 1;
   vars.put("local_count", temp.toString());
}

log.info("the local count is " + vars.get("local_count");

glo = props.get("global_count");

if (glo == null) {
   props.put("global_count", "1"); //available in test plan level
} else {
   temp1 = Integer.parseInt(glo) + 1;
   props.put("global_count", temp1.toString());
}

log.info("the global count is " + props.get("global_count");

现在尝试创建多个线程组并在每个线程组中添加此 BeanShell 采样器。

如何使变量仅在线程组的所有线程中可用(不在其他线程组上)。在不同线程组中提供恒定的唯一名称不是一个选项。?

有人可以帮助我吗? 预先感谢。

testing jmeter beanshell
1个回答
4
投票

添加 BeanShell Sampler 并插入以下代码:

vars.put("test","abcd");

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.