我正在JMeter BeanShell中尝试以下代码

我需要将OldT的值与${so_tid_1}进行比较,后者是一个确切的字符串,而不是一个变量

String OldT = vars.get("OldT");
if (OldT.equals("${so_tid_1}")){
    vars.put("OldT","ABCD");
}

我观察到即使将OldT的值作为${so_tid_1}接收到,if条件也不会执行。但是,如果我将条件更改为if(OldT.equals("some string"),则可以正常工作,并且可以获得预期的输出。

有什么想法为什么它不起作用?

最佳答案

只需执行以下操作:

 String OldT = vars.get("OldT"); // I need to compare the value of OldT
                                 // with ${so_tid_1} which is an exact
                                 // string and not a variable
 if (OldT.equals("\${so_tid_1}")){
     vars.put("OldT","ABCD");
 }

您需要转义$符号。

关于JMeter beanshell字符串比较问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31165021/

10-12 05:06