Jmeter JSR223后处理器意外字符:'\';

Jmeter JSR223后处理器意外字符:'\';,jmeter,Jmeter,我使用groovy JSR223后处理器处理响应并保存到文件 这是我的配置 在添加UDV的测试计划中: USER_PATH : ${__groovy(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)}${__groovy(File.separator)} JSR223后处理器脚本 def x = var.get ("${USER_PATH}"); out.print(

我使用groovy JSR223后处理器处理响应并保存到文件

这是我的配置

在添加UDV的测试计划中:

USER_PATH : ${__groovy(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)}${__groovy(File.separator)}
JSR223后处理器脚本

def x = var.get ("${USER_PATH}");

out.print(x);
我在jmeter日志查看器中发现以下错误

ERROR o.a.j.e.JSR223PostProcessor: Problem in JSR223 script, JSR223 PostProcessor
javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script18.groovy: 1: unexpected char: '\' @ line 1, column 21.
   def x = var.get ("C:\Users\wins\learn\test\");
groovy似乎希望从用户路径变量得到双斜杠? 我应该如何避免groovy出现意外的字符错误


谢谢

您需要通过变量键而不是值获取,请将代码更改为:

  def x = vars.get("USER_PATH");

您需要通过变量键而不是值获取,请将代码更改为:

  def x = vars.get("USER_PATH");

JSR223后处理器脚本中的代码错误:

  • 访问JMeter变量的关键字是
  • 您应该从
    用户路径
    表达式中删除美元符号和大括号
  • 速记是区分大小写的
  • 固定代码将被删除

    def x = vars.get ("USER_PATH");
    OUT.print(x);
    

    更多信息:

    JSR223后处理器脚本中的代码错误:

  • 访问JMeter变量的关键字是
  • 您应该从
    用户路径
    表达式中删除美元符号和大括号
  • 速记是区分大小写的
  • 固定代码将被删除

    def x = vars.get ("USER_PATH");
    OUT.print(x);
    

    更多信息:

    遵循此答案路径的是来自jmeter用户的路径:${uu groovy(import org.apache.jmeter.services.FileServer;FileServer.getFileServer().getBaseDir())}${uu groovy(File.separator)}我无法修改输出。遵循此答案路径的是来自jmeter用户的路径:${uu groovy(import org.apache.jmeter.services.FileServer;FileServer.getFileServer().getBaseDir())}${{u groovy(File.separator)}我无法修改输出。感谢Dmitri,它可以工作。什么时候我应该使用${}访问prop或variable?感谢Dmitri,它可以工作。什么时候我应该使用${}访问prop或variable?