#jmeter
#jmeter
Вопрос:
Мой случай — я должен войти на веб-сайт, а затем должен получить данные. Для этого я создал одну группу потоков и создал два HTTP-запроса, один для входа и один для извлечения данных. Но я хочу, чтобы HTTP-запрос на вход выполнялся один раз, а выборка данных выполнялась для многих виртуальных пользователей. Но есть одна общая группа потоков для обоих. Пожалуйста, помогите, как я могу с этим разобраться?
Ответ №1:
Если вам нужно выполнять все запросы после входа в систему параллельно, вы можете использовать плагин Parallel Controller:
- Установить
JMeter Plugin Manager
: Загрузить plugins-manager.jar и поместите его вlib/ext
каталог, затем перезапустите JMeter. - Откройте Параметры меню -> Менеджер плагинов
- Установите
Parallel Controller amp; Sampler
плагин. - Добавьте
Parallel Controller
в план тестирования: щелкните правой кнопкой мыши на группе потоков -> Добавить -> Логический контроллер -> bzm — Параллельный контроллер - Добавьте свои сэмплеры запросов внутри параллельного контроллера.
Выберите свою группу потоков и задайте количество потоков (пользователей) и количество циклов.
Каждый поток выполнит план тестирования целиком и полностью независимо от других потоков тестирования. Несколько потоков используются для имитации одновременных подключений к вашему серверному приложению.
Итак, если вы хотите запустить login sampler только один раз, установите:
Number of Threads (users)
до 1Loop Count
до 1
Существуют также различные типы групп потоков. Проверьте официальную документацию для получения дополнительной информации
Ответ №2:
Потоки JMeter (виртуальные пользователи) полностью независимы друг от друга, они используют шаблон Thread Local Storage для хранения информации о сеансе и переменных, поэтому, если вы войдете в систему с одним пользователем — он сможет получить данные, второй пользователь не сможет получить данные, если он не вошел в систему.
Если вы абсолютно уверены, что хотите использовать один и тот же сеанс входа для нескольких виртуальных пользователей и выполнить вход только один раз, рассмотрите следующую тестовую настройку:
- Настройте группу потоков с 1 виртуальным пользователем и 1 циклом для выполнения входа в систему
- Плагин межпотоковой связи для хранения информации о сеансе (т. Е. файлов cookie) и передачи ее в обычную группу потоков
- Обычная группа потоков с таким количеством пользователей, сколько вам нужно, используя данные из группы потоков настройки
Ознакомьтесь с планом тестирования SynchronizationPluginsExample.jmx для эталонной реализации.