Объявление типизированной переменной: ошибка инициализатора в сэмплере бобовой оболочки Jmeter
Привет, я пытаюсь передать значение из одного экстрактора регулярных выражений одного HTTP-запроса в сэмплер BeanShell, как показано ниже.
var linkArr= ${PlanLinksArray_1}
Теперь я использую эту переменную linkArr в последующем запросе в пути, как показано ниже
/hix/admin/planmgmt/viewqhpdetail/${linkArr}
При попытке сделать это я получаю сообщение об ошибке ниже. Шаг завершается неудачно в бобовой оболочке с ошибкой ниже.
Может кто-нибудь любезно посоветовать??
2015/06/12 16:32:10 INFO - jmeter.threads.JMeterThread: Thread started: Thread Group 1-1
2015/06/12 16:32:11 ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of: ``var linkArr= hrGBCoZUbjLEV7zGwJpxEw ;'' : Typed variable declaration : Void initializer.
2015/06/12 16:32:11 WARN - jmeter.protocol.java.sampler.BeanShellSampler: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``var linkArr= hrGBCoZUbjLEV7zGwJpxEw ;'' : Typed variable declaration : Void initializer.
1 ответ
Из интереса, зачем вам Beanshell вместо звонка ${PlanLinksArray_1}
прямо в последующем запросе?
Что касается самого вашего вопроса, Beanshell - больше Java, чем JavaScript, поэтому правильный код будет выглядеть примерно так:
String linkArr = vars.get("PlanLinksArray_1");
vars.put("linkArr", linkArr);
куда vars
является сокращением к экземпляру класса JMeterVariables.
См. Как использовать BeanShell: любимое руководство по встроенным компонентам JMeter для получения дополнительной информации о сценариях Beanshell в JMeter.