Эффективное управление файлами cookie в JMeter: комплексное руководство для инженеров по тестированию
Эффективное управление файлами cookie в JMeter: комплексное руководство для инженеров по тестированию

Предисловие

В тестировании производительности и автоматическом тестировании управление файлами cookie является важнейшим звеном. Апач JMeter предоставляет мощный менеджер файлов cookie, который помогает инженерам по тестированию моделировать пользовательские сеансы и более удобно поддерживать состояние. В этом руководстве подробно описано, как настроить и использовать JMeter. менеджера файлов cookie。

Что такое файлы cookie и почему они важны

Файл cookie — это небольшой объем данных, отправленный сервером и хранимый на клиенте для поддержания пользовательских сеансов и хранения пользовательских настроек. Для веб-приложений файлы cookie особенно важны в следующих сценариях:

  • Аутентификация пользователя
  • Управление сеансами
  • Пользовательские настройки

При тестировании производительности для моделирования реального поведения пользователя требуется управление и поддержка файлов cookie, чтобы обеспечить корректность каждого пользовательского сеанса.

Добавьте и настройте менеджер файлов cookie

  • Запустить JMeter

Дважды щелкните файл jmeter.bat или введите jmeter в командной строке, чтобы запустить графический интерфейс JMeter.

  • Создать план тестирования

Щелкните правой кнопкой мыши план тестирования (Test Plan),выбирать“добавить в”(Add)->“Threads (Users)”->“Thread Group”。

  • Добавить менеджер файлов cookie

Щелкните правой кнопкой мыши группу тем.,выбирать“добавить в”(Add)->“элемент конфигурации”(Config Element)->“HTTP Cookie Manager”。

  • Настроить диспетчер файлов cookie
  • Установите флажок «Очищать файлы cookie на каждой итерации», чтобы гарантировать, что файлы cookie очищаются в начале каждой итерации.
  • Если вам нужно добавить файлы cookie вручную, вы можете нажать кнопку «Добавить» и заполнить информацию, связанную с файлами cookie (имя, значение, домен, путь и т. д.).

Использование менеджера файлов cookie

Добавить HTTP-запрос

  • Щелкните правой кнопкой мыши группу тем.,выбирать“добавить в”(Add)->“Sampler”->“HTTP Request”。
  • Настройте URL-адрес и другие параметры HTTP-запроса.,Например:
    • имя сервера илиIP:example.com
    • метод:GET
    • путь:login

Установить запрос на вход

  • Обычно запрос на вход возвращает заголовок Set-Cookie, который используется сервером для идентификации сеанса.
  • Если менеджер файлов cookie настроен правильно, JMeter автоматически сохранит и будет использовать эти файлы cookie в последующих запросах.

Проверьте статус входа

  • Добавьте еще один HTTP-запрос для доступа к странице, требующей входа в систему.
  • Настройте URL-адрес и параметры запроса,Например:
    • имя сервера илиIP:example.com
    • метод:GET
    • путь:/profile

Проверка и отладка

  • Добавить прослушиватель дерева результатов просмотра
  • Щелкните правой кнопкой мыши группу тем.,выбирать“добавить в”(Add)->“слушатель”(Listeners)->“View Results Tree”。
  • Запустите план тестирования и проверьте заголовки запросов и ответов, просматривая прослушиватель дерева результатов, чтобы убедиться, что файлы cookie отправляются и принимаются правильно.
  • Отладка файлов cookie
  • Если файлы cookie управляются неправильно, вы можете вручную добавить отладочную информацию в диспетчере файлов cookie или использовать Debug Sampler для отладки.
  • Адддебаг Sampler:Щелкните правой кнопкой мыши группу тем.,выбирать“добавить в”(Add)->“Sampler”->“Debug Sampler”。
  • Запустите план тестирования и просмотрите отладочную информацию, чтобы определить проблему.

Расширенная конфигурация

  • Cookieполитика
    • JMeter поддерживает несколько политик использования файлов cookie, включая стандартную, совместимую, по умолчанию и строгую. Выберите подходящую стратегию, исходя из ваших потребностей.
    • В Диспетчере файлов cookie выберите «Политика использования файлов cookie» (Cookie Политика) раскрывающееся меню для настройки.
  • Междоменные файлы cookie
  • При проведении междоменного тестирования убедитесь, что менеджер файлов cookie настроен правильно, и убедитесь, что междоменные запросы правильно передают файлы cookie.
  • Извлечение с использованием регулярных выраженийCookie
    • В некоторых сложных сценариях может потребоваться использование регулярных выражений для извлечения файлов cookie из ответа и установки их вручную.
    • Используйте экстрактор регулярных выражений (Regular Expression Extractor) извлекает необходимые значения cookie из заголовков ответа и использует эти значения в последующих запросах.

Пример: Полный план тестирования

Язык кода:yaml
копировать
Test Plan
  Thread Group
    HTTP Cookie Manager (Clear cookies each iteration: true)
    HTTP Request (Login)
      - URL: http://example.com/login
      - Method: POST
      - Parameters: username, password
    HTTP Request (Profile)
      - URL: http://example.com/profile
    View Results Tree
    Debug Sampler

Подвести итог

С помощью описанных выше шагов вы можете успешно управлять файлами cookie и использовать их в JMeter, чтобы обеспечить подлинность и точность тестового сценария. Опыт управления файлами cookie значительно повысит эффективность вашего тестирования производительности и автоматического тестирования, а также поможет вам лучше моделировать и проверять поведение пользователей.

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода