使用这段代码,我尝试在队列中使用分隔符传递两个变量
String[] words = ${gotDataCloseOrder}.split("@");
String ClosedOrderAccessToken = words[1];
String CloseOrderOrderId = words[0];
log.info("ClosedOrderAccessToken",ClosedOrderAccessToken);
log.info("CloseOrderOrderId",CloseOrderOrderId);
gotDataCloseOrder变量值如下所示
6362cb2ab4f4ed3897cfb5cc@eyJhbGciOiJIUzUxMiJ9.eyJ0eXBlIjoiZ3Vlc
但我收到这个错误
2022-11-02 23:25:40,434 WARN o.a.j.m.BeanShellPreProcessor: Problem in BeanShell script.
org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval In file: inline evaluation of:
``String[] words = 6362cb2ab4f4ed3897cfb5cc@eyJhbGciOiJIUzUxMiJ9.eyJ0eXBlIjoiZ3Vlc . . . ''
Encountered "cb2ab4f4ed3897cfb5cc" at line 1, column 22.
问题是什么?我应该做什么更改来解决此问题?
1条答案
按热度按时间oewdyzsn1#
1.不要将JMeter Functions or Variables内联到脚本中,而是使用基于代码的等效项。
更改此行:
改为:
其中
vars
是JMeterVariables类示例的简写,有关此快捷方式和其他有用的JMeter API快捷方式的更多信息,请参见Top 8 JMeter Java Classes You Should Be Using with Groovy1.从JMeter 3.1开始,建议使用JSR223测试元素和Groovy语言编写脚本,因此请考虑迁移。