JMeter, экстрактор регулярных выражений - PullRequest
0 голосов
/ 12 октября 2018

Мне трудно заставить "Экспрессор выражений Regex" работать в Jmeter для следующего:

Заголовок ответа выглядит примерно так:

Set-Cookie: Token=dfrtydgsdttetert; Domain=.domain.ca; Path=/; 
Expires=Fri, 19 Oct 2018 18:54:18 GMT; Secure
ETag: W/"41c-gdf+/mzdw"

В экстракторе регулярных выражений JMeter:

Apply to: main sample and sub-samples
Field to check "Response Header"
Name of create Variable: extracted_token
Regular Expression: (?<=Token=)(.*)(?=; Domain)    <- the goal is 
the get the string "dfrtydgsdttetert"
Template: $1$
Match No: 1
Default Value: ERROR

Я попробовал вышеуказанную конфигурацию, и переменная extract_token всегда имеет значение «ОШИБКА»

, если я изменяю регулярное выражение на Token =, тогда я получаю:

extracted_id_token=null
extracted_id_token_g=0
extracted_id_token_g0=Token=

Пожалуйста, сообщите мне, как исправить мою конфигурацию, чтобы я мог получить "dfrtydgsdttetert" в заголовке ответа.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

«Заголовок ответа», который вы пытаетесь извлечь, в основном представляет собой HTTP Cookie , JMeter автоматически обрабатывает куки через HTTP Cookie Manager , так что вы можете просто добавить его в свой план тестированияи это будет намного удобнее, чем извлекать значения из заголовка Set-Cookie вручную и добавлять их в заголовок Cookie .

Если вам нужно значение cookie по другой причине, вы можете получить его из самого HTTP Cookie Manager

  1. Добавить следующую строку в user.properties file (находится в папке «bin» вашей установки JMeter)

    CookieManager.save.cookies=true
    
  2. Перезапустите JMeter, чтобы забрать свойство (изменение будет постоянным)
  3. Добавить HTTP Cookie Managerк вашему плану тестирования
  4. Вот и все, теперь вы сможете ссылаться на значение Token cookie как ${COOKIE_Token}, где это необходимо, не нужно извлекать его из заголовка.

Дополнительная информация: Расширенное использование HTTP Cookie Manager - Руководство

0 голосов
/ 12 октября 2018

Для этого извлечения наиболее эффективным способом является использование Boundary Extractor :

Boundary Extractor configuration

Если вы все еще хотите Экстрактор регулярных выражений :

Regular Expression Extractor configuration

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