Нагрузочное тестирование требует предварительного планирования с учетом всех ключевых моментов. На каком этапе оно проводится и как начинается? Какие общие рекомендации следует учитывать при проведении тестов?n
Нагрузочное тестирование и его ключевые моменты
Нагрузочное тестирование позволяет определить, собрать показатели производительности тестируемого объекта в соответствии с установленными требованиями. Специалисты считают, что проблемы решать намного проще, если они выявлены в самом начале. Нагрузочные тесты позволяют избежать возможных ошибок, но их целевое назначение может меняться во время перехода от разработки до вывода на продакшн.nnПеред запуском нагрузочного тестирования сайта/веб-приложения возникает необходимость разобраться в нескольких ключевых моментах:n
- n
- что именно нужно замерять и на каких данных;
- закончатся ли данные в ходе тестирования;
- как они будут возобновляться;
- какие показатели нужно отслеживать;
- ожидаемые результаты тестов.
nОбъем действий зависит от размера объекта тестирования: для небольшого проекта понадобиться несколько дней, для крупного — значительно больше времени + сотрудничество с заказчиком, который может выдвигать свои определенные требования к тестам. В любом случае следует учитывать, что во время этого процесса будут только найдены ошибки, но не исправлены.nnДля выявления возможных ошибок при проведении тестирования сайта/веб-приложения понадобиться установить критерии их поиска. Из-за этого специалисты стараются запустить тесты в начале разработки. Это дает возможность убедиться, что система функционирует правильно. Изначально тестируется критический сценарий:n
- на определение пределов производительности (разладка);
- на измерение таймингов (проверяется, как сервис укладывается в SLA).
В обязательном порядке формулируются нефункциональные требования к производительности и стабильности (встречается практически во всех проектах):n
- размер обрабатываемых данных,
- время проведения их обработки;
- частота запусков.
Следует учитывать, что в разных по величине проектах составляющие нефункциональных требований могут отличаться своей приоритетностью.n
Общие рекомендации при проведении нагрузочного тестирования
Специалисты отмечают схожесть обычного тестирования с нагрузочным, так как под тесты попадают наиболее важные сценарии. Только после их проверки переходят к автоматизации и проведению замеров.nnОсновная рекомендация – тестировать необходимо все, что вызывает опасения. К тому же особое внимание следует уделять выбору нагрузочных инструментов, которые не должны скрывать детали и удовлетворять большинству потребностей. Например, чтобы протестировать серверную часть применяют Apache JMeter, браузера — Selenium, Java — JMH.n
Наша компания имеет большой опыт установки и настройки ПО для нагрузочного тестирования, обращайтесь, [email protected]