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