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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

15.06.2011

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

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

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

03.08.2013

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

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

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

15.05.2013

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

Новый интерфейс позволит улучшить производительность платформы iOS 7

Новый интерфейс позволит улучшить производительность платформы iOS 7

04.04.2013

 В настоящее время совместно работают над созданием необходимых обновлений программного обеспечения, которые предназначены для устранения различных проблем, связанных с работой последней версией мобил...