Тестирование нагрузки: подумайте о времени, темпах и задержках
Что такое время на обдумывание при тестировании производительности?
Время на обдумывание в нагрузочном тестировании относится к имитируемой задержке или паузе между последовательными действиями пользователя во время теста производительности. Он представляет собой время, которое пользователь тратит на размышления, чтение или иное бездействие после выполнения одного действия и перед началом следующего. В тестовые сценарии вводится время на обдумывание, чтобы сделать их более реалистичными и имитировать естественное поведение реальных пользователей, взаимодействующих с приложением.
Например, рассмотрим сценарий веб-приложения электронной коммерции, в котором пользователь выбирает плитку продукта. Затем они переходят на страницу отображения продукта и тратят некоторое время на то, чтобы просмотреть и прочитать контент на этой странице, прежде чем в конечном итоге нажать кнопку «Добавить в корзину». Время, прошедшее между нажатием на плитку продукта и нажатием кнопки «Добавить в корзину», называется временем на обдумывание.
Как правило, когда вы думаете о нагрузочном тестировании, вы думаете о том, чтобы просто обслуживать большое количество одновременных пользователей в ваших веб-приложениях, веб-сайтах или API, чтобы увидеть, как они работают в стрессовых условиях. Время Think пригодится, чтобы лучше смоделировать шаги пути пользователя, такие как путь к покупке, поиск продукта или вход в учетную запись. Каждый из этих примеров имеет разные значения времени на обдумывание, и их важно учитывать при нагрузочном тестировании.
Преимущества Think Time
- Реализм: В том числе время на обдумывание воспроизводит естественное поведение пользователей, которые не взаимодействуют с системой непрерывно. Это повышает реалистичность сценариев нагрузочного тестирования, делая их более соответствующими реальному взаимодействию с пользователем.
- Точность пользовательского моделирования: Время на обдумывание помогает точно моделировать поведение пользователей в процессе тестирования. Пользователи обычно тратят время на чтение контента, принятие решений или обдумывание действий, и время на обдумывание позволяет смоделировать эти естественные паузы.
- Производительность: Think Time освобождает ресурсы на компьютере сервера выполнения между запросами. Это позволяет другим виртуальным пользователям (VU) на сервере выполнения отправлять свои запросы, предотвращая возникновение ограничений ввода-вывода на компьютере сервера выполнения.
- Улучшенный поиск и устранение неисправностей: Реалистичные сценарии времени на обдумывание помогают выявлять узкие места производительности, которые могут быть неочевидны в сценариях без пауз. Он помогает выявлять проблемы, связанные с пользовательскими сеансами, управлением сеансами и общей скоростью реагирования системы.
Когда следует использовать время на обдумывание
Включение времени на обдумывание в нагрузочное тестирование может быть сложной задачей, поскольку все пользователи разные. С другой стороны, время на обдумывание может быть гибким, и вам нужно учитывать диапазон значений времени на обдумывание. Например, некоторым пользователям может потребоваться больше времени для чтения или ввода данных в форму, чем другим.
Вы захотите включить время на обдумывание между этими действиями, чтобы более точно воспроизвести время, в течение которого пользователь получает ответ от вашего сервера, до времени, когда пользователь запрашивает новую страницу. Время на обдумывание будет зависеть от пользовательских сценариев, и вы должны определить диапазоны значений времени на обдумывание, используя данные с вашего веб-сайта или приложения. Вам нужно определить среднее количество времени, которое пользователи проводят на ваших страницах.
Что такое темп в тестировании производительности?
Темп используется в нагрузочных тестах, чтобы гарантировать, что тест выполняется с заданной скоростью транзакций в секунду. Это временной разрыв между каждой полной итерацией бизнес-потока. Это помогает регулировать количество запросов, отправляемых на сервер в секунду.
Важность введения задержек в нагрузочном тестировании
Тестирование производительности приложения перед его массовым выпуском помогает предотвратить потенциальные неудобства для конечных пользователей, такие как истечение времени ожидания, медленные ответы страниц и простои. Чтобы обеспечить реалистичные результаты тестирования и выявить любые проблемы, важно учитывать время на обдумывание и темп при разработке сценария тестирования.
Например, когда мы вводим время на обдумывание между каждым одновременным действием пользователя, сервер использует эту задержку для решения ожидающих задач в очереди. Он выполняет следующую задачу, прежде чем вернуться к предыдущей. Это очень похоже на типичный производственный сценарий с реальными пользователями. Кроме того, включение времени на обдумывание увеличивает время, затрачиваемое пользователем на приложение, выявляя любые проблемы, связанные с способностью сервера эффективно обрабатывать одновременных пользователей.
Расчет задержек для тестовых приложений
Количество одновременно работающих виртуальных пользователей, задержек и транзакций в секунду (TPS) зависит от приложения. Чтобы рассчитать, какими должны быть задержки для вашего приложения, вы можете использовать следующую формулу:
- Длительность теста нагрузки (в секундах) – (TPS – Задержки) – Подсчет одновременных пользователей – Общие транзакции
Например, рассмотрим генерацию 100 000 транзакций со временем отклика 5 секунд каждая во время 10-минутного теста (600 секунд). Чтобы определить необходимое количество одновременных пользователей с 3-секундным временем на размышление, используйте формулу: 100 000 / (8 * 10 * 60), в результате чего получится примерно 21 пользователь. Такой подход помогает определить необходимые задержки и количество пользователей для эффективных нагрузочных тестов.
Настройка задержек нагрузочного тестирования с помощью LoadView
LoadView предоставляет вам веб-рекордер EveryStep, который упрощает создание тестовых сценариев, записывая действия пользователя в браузере. Он точно повторяет шаги пользователя, фиксируя точки данных, такие как селекторы, действия и задержки. Во время создания тестового сценария важно эмулировать подлинный путь пользователя, включая временные задержки. После записи инструмент генерирует сценарий, который можно повторно запустить с указанным количеством одновременных пользователей. Сценарий является настраиваемым, что позволяет пользователям изменять и обновлять задержки для отдельных шагов в соответствии с требованиями тестирования, как показано на рисунке ниже. Узнайте больше о том, как редактировать сценарии EveryStep Web Recorder.
Оптимальный подход для достижения точных результатов в нагрузочном тесте предполагает создание скрипта, который имитирует реальные взаимодействия пользователя с приложением и фиксирует путь пользователя.
С помощью LoadView у вас также будет возможность изменять поведение пользователя при нагрузочном тестировании. Как видно на рисунке ниже, вы можете выбрать Нормальную задержку или Пользовательскую задержку, чтобы задать определенное поведение пользователя и задержки для ваших приложений.
Заключение: подумайте о времени, темпе и задержках
Тестирование производительности приложения имеет решающее значение перед его развертыванием в рабочей среде. Эффективность этого процесса в выявлении проблем, связанных с производительностью, зависит от соблюдения рекомендаций и разработки сценариев тестирования, которые охватывают реальные действия пользователя в приложении.
В этой статье мы рассмотрели значение времени на обдумывание, темпа и задержек при нагрузочном тестировании. Включение этих элементов в проекты нагрузочных тестов позволяет заблаговременно обнаруживать такие проблемы, как время ожидания страниц, медленные ответы страниц, расхождения во времени отклика и ошибки сервера, даже при высоких нагрузках. Внедрение этих стратегий способствует разработке отзывчивых и надежных приложений и веб-сайтов. LoadView может помочь оптимизировать этот процесс, и вы можете легко включить время на обдумывание, темп и задержки в сценарии нагрузочных тестов, чтобы получить максимальную отдачу от усилий по тестированию. Когда вы зарегистрируетесь в LoadView сегодня, вы получите все преимущества нагрузочного тестирования, которые может предложить платформа, и сможете провести свои первые первоначальные тесты бесплатно!
- Что такое время на обдумывание при тестировании производительности?
- Когда следует использовать время на обдумывание
- Что такое темп в тестировании производительности?
- Важность введения задержек в нагрузочном тестировании
- Настройка задержек нагрузочного тестирования с помощью LoadView
- Заключение: подумайте о времени, темпе и задержках
Следующий уровень
Испытать непревзойденные функции с безграничной масштабируемостью. Ни кредитной карты, ни договора.