Как сохранить значение функции __evalVar в переменную и повторно использовать его для сравнения - PullRequest
0 голосов
/ 08 января 2019

У нас есть сценарий, в котором две переменные извлекаются из двух сэмплеров, и эти переменные необходимо сравнивать. Для этого создали два сэмплера, каждый из которых имеет 1 регулярное выражение с matchno: -1, и использовал контроллер ForEach> под ним «counter», где я использовал функцию $ {__ evalVar (test _ $ {test_all})}}

Для этого нужно сохранить значение $ {__ evalVar (test _ $ {test_all})} в переменной, чтобы его можно было повторно использовать в других местах для сравнения.

Возможно ли сохранение значения из функции __evalVar и как его достичь?

1 Ответ

0 голосов
/ 08 января 2019
  1. Существует __jexl3 () функция , которая может вычислить ваше выражение и сохранить значение в переменной по вашему выбору, т.е. varFromJexl3:

    ${__jexl3("${__evalVar(test_${test_all})}",varFromJexl3)}
    
  2. Вы можете рассмотреть возможность перехода на __ groovy () , которая, вероятно, самая мощная и гибкая функция JMeter , которую я могу себе представить. Соответствующий синтаксис для оценки переменной test_${test_all} и сохранения ее в переменной varFromGroovy будет выглядеть примерно так:

    ${__groovy(vars.get('test_' + vars.get('test_all')), varFromGroovy)}
    

    Демо-версия:

    enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...