有没有办法将变量从一个BeanShell Pre / Post-Processor引用到另一个BeanShell Processor (它们在同一个Thread Group中)?
如果我在HTTP请求下的BeanShell PreProcessor中创建一个String变量,那么我可以在同一个HTTP请求下的BeanShell PostProcessor中使用或引用该变量吗?
我尝试通过以下方式访问此变量:
+ HTTP请求
+ BeanShell PreProcessor:
String preProcessor1_MYID = "Value_1";
+ BeanShell PostProcessor:
String postProcessor1_MYID = "Value_2";
//Try #1:
String tmp_preProcessor1_MYID = preProcessor1_MYID;
//Try #2:
String tmp_preProcessor1_MYID = ${preProcessor1_MYID};
//Try #3:
String tmp_preProcessor1_MYID = ${__V(preProcessor1_MYID)};
//Try #4:
String tmp_preProcessor1_MYID = vars.get("preProcessor1_MYID");
是否有一个不同的函数,如$ {__ V()}或vars.get(),我错过了我应该使用的?我还想知道我是否需要一个User Defined Variables对象才能在BeanShell Pre / PostProcessors之间共享这个变量,但我不确定。我也读过$ {__ BeanShell()}函数,但是我认为这也不是我想要的......有什么想法吗?我认为这应该是可能的,但我希望我不需要添加像User-Defined Vars对象那样的东西。
非常感谢任何想法或建议!
先谢谢,
马特
答案 0 :(得分:3)
如果您稍后需要在其他元素中使用该值,
将其存储在可维护的
中 vars.put("myvar", "value");
现在您可以使用
访问它 ${myvar}
或在beanshell中
vars.get("myvar")
。