Нагрузочное и модульное тестирование продукта

Залог успеха программного продукта – бесперебойная работа и удовлетворительная производительность под различными нагрузками. Таких целей можно достичь с помощью нагрузочного тестирования. Это автоматизированный процесс, который имитирует поведение реальных пользователей системы.

Нагрузочное тестирование – процесс многоуровневый и сложный. Он требует умений исследовать и анализировать. Более того, тестирование программы под нагрузкой требует знаний серверов и протоколов, а также навыков программирования. Именно поэтому в подавляющем большинстве случаев под нагрузочное тестирование выделяется отдельная команда специалистов (наряду с функциональным тестированием).

Что тестируем?

  • Производительность. В этом смысле система анализируется на предмет таких параметров, как время отклика программы в условиях различных нагрузок.

  • Стабильность. Главной задачей является проверка программного продукта в условиях длительной эксплуатации (нет ли утечек памяти, правильны ли конфигурационные настройки, т.д.).

  • Регенерация после критической нагрузки. Основная цель – проверить, способна ли система самостоятельно «реабилитироваться» после критических нагрузок. В этом смысле, акцент делается на способность к восстановлению, а не на производительность.

Теперь уделим немного внимания стратегии нагрузочного тестирования. Она выглядит примерно так:

  • Выделение набора операций;

  • Производительность операций;

  • Зависимость производительности операций от времени.

В рамках набора операций важно выделить две категории: те, которые важны с точки зрения бизнеса и те, которые важны для технической составляющей. Для бизнеса важны те операции, которые влияют на производительность процесса, например, количество выполняемых операций за определенный промежуток времени. С технической точки зрения, важность имеют операции, которые задействуют большое количество ресурсов. Например, создание ресурсоемких отчетов в системе, что требует «сложных» запросов в базу данных.

Нагрузочное тестирование – неотъемлемый этап оценки качества продукта. Без него разработчики рискуют отдать ПО с нестабильной производительностью, а заказчик – получить продукт, не удовлетворяющий требованиям пользователей. Наряду с нагрузочным, необходимо уделять внимание и другим критически важным областям, таким как функциональное, тестирование графического интерфейса, интеграционное, удобства пользования, безопасности.

Похожие записи
Три технологических продукта, которые могут не дожить до 2014 года

Три технологических продукта, которые могут не дожить до 2014 года

03.08.2013

Многие, достаточно крупные компании иногда совершают очень серьезные ошибки, которые пользователи вряд ли быстро забудут. Например, искренние поклонники компании HP вряд ли забудут, что их любимый про...

Производительность Xbox 360 и PS3 на 50% ниже, нежели Nintendo Wii U

Производительность Xbox 360 и PS3 на 50% ниже, нежели Nintendo Wii U

15.06.2011

Практически полностью засекреченной остается приставка Nintendo Wii U, которую совсем недавно анонсировали. Не смотря на это в сети можно найти уже определенную информацию о её производительности. Nin...

Sony: производительность процессора PlayStation 4 превосходит PS3 в 10 раз

Sony: производительность процессора PlayStation 4 превосходит PS3 в 10 раз

28.01.2021

Sony опубликовала раздел с подробными пояснениями относительно игровой консоли PlayStation 4. Упоминается и процессор, производительность которого, как уверяет компания, может в 10 раз превышать соотв...

3 технологии, которые станут необходимы для бизнеса

3 технологии, которые станут необходимы для бизнеса

15.05.2013

Всем известно о том, что когда потребители покупают новое программное обеспечение, например, они рассчитывают получить к нему видео-гид. На чтение инструкций, зачастую, у большинства пользователей не ...