Тестирование производительности (оно же нагрузочное тестирование) – сложная автоматизированная процедура.
Оно имитирует работу тех или иных пользователей с определенной нагрузкой.
Главная задача такого тестирования – определение масштабируемости программы под воздействием нагрузки. Результатов такого тестирования несколько:
-
замеряется время выполнения тех или иных операций при определенной интенсивности работы;
-
определяется количество пользователей, которые одновременно работают над данной программой;
-
определяются границы оптимальной производительности при возрастании нагрузки;
-
исследуется продуктивность приложения при высокой, предельной, а также стрессовой нагрузке;
Нагрузочное тестирование проводится для приложений трех видов:
-
программы для портативных устройств;
-
корпоративные приложения;
-
Интернет-приложения, включая приложения для соцсетей, решения для Интернет-коммерции, веб-порталы.
Тестирование производительности приложения – непростая операция, требующая квалифицированной подготовки. Одной только записи и запуска скриптов в этом случае будет недостаточно. Нагрузочное тестирование – сложная работа, требующая внимательного исследования и анализа. К тому же оно требует больших познаний в программировании, знания сетевых протоколов, баз данных и серверов приложений. Нельзя забывать и о том, что есть разные виды тестирования производительности, и предназначены они для разных целей. Для сравнения, модульное тестирование выполнить значительно проще.
Выделяют три этапа тестирования: анализ, непосредственно тестирование и рекомендации.
На первом этапе выполняется углубленное исследование приложения. На основе этого формулируются цели, подбираются наиболее рациональная стратегия тестирования и методология.
Второй этап предполагает планирование работы, а также ее непосредственное проведение. Приложение проходит ряд автоматизированных и ручных тестов. Составляется подробный отчет.
На третьем этапе тестировщики предлагают пользователю рекомендации, следуя которым можно оптимизировать работу аппаратной части, конфигурацию приложения, устранить обнаруженные ошибки, увеличить производительность и сократить затраты на содержание ПО.
Таким образом, своевременное нагрузочное тестирование может действительно серьезно повлиять на работу программного обеспечения.








