Jmeter: как получить значения, которые во 2-й строке, используя Regx? - PullRequest
1 голос
/ 21 января 2020

Я извлекаю Firstname из базы данных и сохраняю его в объекте, используя REGx (jmeter). Так как извлеченные данные во 2-й строке (PF Screenshot), когда я отправляю это в запросе API, это происходит во 2-й строке, как показано ниже. Таким образом, API возвращает 400. Пожалуйста, предложите возможное решение для этого?

Ответ БД:

FirstName

RockyBhai

Используется Regx

FirstName([^"]+)

мой запрос:

{
"name":"${name}",
}

jmeter отправил api req:

{
"name":"

RockyBhai

",

}

я ожидаю:

{
"name":"RockyBhai",
}

IMG

Ответы [ 2 ]

1 голос
/ 21 января 2020

Все, что вам нужно, - это шаблон, который обрезает значение, захваченное в Группе 1, из пробелов, которые фиксируются, когда [^"] соответствует любому символу, кроме " (включая пробелы).

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

FirstName\s*([^"]*[^"\s])

См. Демоверсию regex .

Подробности

  • FirstName - слово
  • \s* - 0 или более пробелов (это удаляет пробелы слева)
  • ([^"]*[^"\s]) - Захват группы 1:
    • [^"]* - любые 0+ символов, кроме "
    • [^"\s] - ... до последнего символа до ближайшего ", который не является пробелом (это обрезает пропуски справа).

Если вы планируете сопоставлять имя только в одной строке, добавьте \n в [^"] с отрицанием класс персонажа, FirstName\s*([^"\n]*[^"\s]).

1 голос
/ 21 января 2020

Сконфигурируйте свой экстрактор регулярных выражений следующим образом:

  • Имя созданной переменной: что-либо значимое, т. Е. firstName
  • Регулярное выражение: (\w+)
  • Шаблон: $1$
  • Номер матча: 2

enter image description here

Вы должны иметь доступ к извлеченному значению как ${firstName} где требуется:

enter image description here

Ссылки:

...