Как выполнить нагрузочное тестирование для сайта с помощью JMeter
Я хочу создать скрипт в JMeter, который имитирует, например, 100 пользователей, заходящих на наш сайт в течение 3-4 минут.
Нам нужно проверить, может ли наше приложение допускать 25 000 пользователей в день - это 1 100 в час.
Для этого я сделал этот тест Jmeter:
и вот результат
а вот и график
Я хочу знать, что именно этот результат говорит нам, если мой тест пройден или не пройден, если yahoo.com (для которого мы запустили этот тест для нашего примера) может разрешить 25 000 пользователей / день, и если я ввожу свои критерии / требования правильно?
Спасибо
1 ответ
1. Я бы посоветовал лучше использовать некоторые пользовательские сэмплеры из http://jmeter-plugins.org/:
- Ultimate Thread Group: более гибкая реализация Thread Group позволяет точно настроить ваш сценарий нагрузочного тестирования;
- Время отклика с течением времени / Время отклика против потоков / активных потоков с течением времени: больше слушателей, чем графики по умолчанию в JMeter.
2. В дополнение к приведенному выше комментарию @Qwe: тестируйте не один HTTP-запрос, а пользовательские транзакции: каждый тестовый поток должен имитировать вид активности просмотра в реальном времени: вход в систему (если есть), навигация по сайту, поиск, доступ / редактирование личных настроек, выход из системы и т. д.
Для эмуляции реального пользователя добавьте также таймер "обдумывания" между этапами транзакции.
3. Контрольные ответы, по крайней мере, следующие:
- код ответа на каждый запрос пользователя (@ Response Assertion);
- Продолжительность - для проверки нефункциональных требований к критическим транзакциям (@ Duration Assertion).
4. Просмотрите соответствующую документацию JMeter:
5. Некоторые пошаговые инструкции по настройке и использованию Jmeter для нагрузочного тестирования вы можете найти здесь:
- Нагрузочное тестирование ваших приложений с Apache JMeter
- Использование JMeter
- Эффективное нагрузочное тестирование с Apache JMeter
- Нагрузочное тестирование с JMeter: часть 1, часть 2, часть 3
- Простой нагрузочный тест с JMeter
- Нагрузочное тестирование с помощью Apache JMeter
Тестирование производительности с JMeter - Ваш первый тест JMeter
- Некоторые мысли о стресс-тестировании веб-приложений с помощью JMeter: часть 1, часть 2.
UPD.
Пожалуйста, найдите, используйте и не стесняйтесь расширять эту коллекцию ресурсов JMeter, продолженную на github.