Сохраните длинное значение в переменной в Jmeter с помощью препроцессора и напечатайте / используйте то же значение в сэмплере - PullRequest
0 голосов
/ 04 мая 2018

ниже приведены шаги, за которыми я следовал, 1) Добавлен сэмплер BeanShell и добавлен препроцессор Bean Shell к тому же сэмплеру.

long c = 25478995L;
log.info(c + " - It is long");
vars.put("c",c)

2) Я пытаюсь напечатать значение c в сэмплере Bean Shell, как показано ниже,

${c}

3) Но когда я вижу в виде дерева результатов, я получаю $ {c} вместо этого, я ожидаю просмотреть 25478995.

Может кто-нибудь помочь мне, пожалуйста. Заранее спасибо.

С уважением, Хари

Ответы [ 3 ]

0 голосов
/ 04 мая 2018

Вы можете использовать ниже: -

BeanShell PreProcessor

long c = 25478995L;
log.info(c + " - It is long");
vars.put("x",c.toString());

Пробоотборник BeanShell

log.info("Value of x==="+vars.get("x"));
0 голосов
/ 07 мая 2018
  1. Если вы хотите сохранить Long как таковой, вам нужно использовать вместо этого функцию vars.putObject () , например:

    vars.putObject("c", c);
    

    и позже:

    log.info("My long value is: " + vars.getObject("c"));
    
  2. Если вы хотите иметь представление String - вам нужно , чтобы сначала преобразовать Long в String например:

    vars.put("c", Long.toString(c));
    
  3. Не ссылаться на переменные типа ${c} в сценариях, используйте vars.get("c"); или vars.getObject("c"); вместо
  4. Поскольку JMeter 3.1 i t рекомендуется использовать тестовые элементы JSR223 и язык Groovy вместо Beanshell для повышения производительности, см. Apache Groovy - почему и как его использовать , чтобы узнать больше подробности.
0 голосов
/ 04 мая 2018

Вам необходимо преобразовать длинное число в строку в методе vars.put. Есть 2 подхода, которые вы можете сделать это

Для этого можно использовать метод String.valueOf ()

long c = 25478995L;
vars.put("c",String.valueOf(c));

Или просто вы можете добавить длинное значение в строку.

long c = 25478995L;
vars.put("c",c+"");

Вы можете следить за этими блогами за такой информацией

...