Перейти к содержимому

VitaliySloupok

Регистрация: 06 авг 2015
Offline Активность: 17 фев 2016 12:39
-----

Мои сообщения

В теме: HTTP Cookie Manager для всех Thread group.

13 января 2016 - 15:21

Разобрался с передачей куков. 

Решение такое:

 

Первая Thread group, в ней есть запрос, откуда мы хотим извлечь куки. В этот запрос добавляем Bean Shell PostProcessor. В этом запросе пишем скрипт:

import org.apache.jmeter.protocol.http.control.CookieManager;
import org.apache.jmeter.protocol.http.control.Cookie;
props.put("cookieOne","${COOKIE_имя актуального кука}");

Затем во второй Thread Group, в ней есть запрос, в который мы хотим поместить эти записанные куки. В этот запрос добавляем Bean Shell PreProcessor, и пишем следующий скрипт:

import org.apache.jmeter.protocol.http.control.CookieManager;
import org.apache.jmeter.protocol.http.control.Cookie;


CookieManager manager = sampler.getCookieManager();
Cookie cookie1 = new Cookie("имя актуального кука",props.get("cookieOne"),"домен","путь",false,-1);
manager.add(cookie1);

При запуске куки предаются во вторую Thread Group и запрос работает корректно.

НО! Другие запросы по прежнему отваливаются, так как в них мы не передаем куки

http://myscreenshot....35157243389.png

 

Вопрос:

Можно ли как-нибудь улучшить запись куков в первой катушке. И распределить их на запросы из второй катушки? (в некоторых запросах разные куки содержатся)

Иначе сейчас мне приходится смотреть на соответствие куков в запросах (из каких именно запросов брать куки и в какие именно запросы их передавать). Другими словами, у меня почти в каждом запросе первой катушки есть BeanShell PostProcessor, и почти в каждом запросе второй катушке Bean Shell PreProcessor.

Как это можно реализовать?


В теме: HTTP Cookie Manager для всех Thread group.

13 января 2016 - 14:28

Спасибо! Убрал #, только по прежнему куки не передаются.


В теме: Jmeter. Авторизация. Как и куда записать полученный токен?

24 октября 2015 - 14:22

Да, все получилось. Спасибо огромное!


В теме: Jmeter. Авторизация. Как и куда записать полученный токен?

22 октября 2015 - 13:54

Благодарю за помощь!

Сделал, как вы сказали. Добавил в узел /token Regular expression extractor http://myscreenshot....54724981723.png. Затем в узлы, где необходима проверка токена, добавил в HTTP Header Manager обращение к этому токену, и все запросы выходят без ошибок, все работает.

http://myscreenshot....03474782304.png

 

Но в данном случае мне пришлось в каждый узел в HTTP Header Manager добавить обращение к переменной ${token}.

Вопрос: Можно ли добавить общий HTTP Header Manager для всех запросов, чтобы не приходилось во всех запросах вбивать обращение к токену?