在第一个线程组中,在bean-shell Post处理器中,我添加了以下代码来设置名称为“id”的Jmeter属性:
int abc=10
int start=${abc}+1;
${__setProperty("id",start)};
print(props.get("id"));
在第二个线程组中,我尝试使用:
访问beanshell中的“id”值int pq=${__P("id",1)};
现在,'pq'的值应为11,但默认值为'1'。 当我检查Debug PostProcessor时,id的值是字符串'start'而不是11.我不确定需要进行哪些更改。我注意到的另一个有趣的事情是:在控制台中,它打印11为“print(props.get(”id“))”“在jmeter属性中,它存储字符串值'start'。
感谢任何帮助。
答案 0 :(得分:2)
首先,通常会注意,不要将变量和函数调用内联到基于脚本的测试元素中,因为它们可能会出错。
所以你应该修改你的代码,如:
First Thread Group:
int abc=10
int start=abc+1
props.put('id', start)
第二个线程组
int pq = props.get('id')
log.info('Property value: ' + pq)
注意:上述代码假定使用JSR223 Test Elements和Groovy language