Статьи
Performance

ПЕРФОМАНС ТЕСТ ПЛАН

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

В нем есть свои подтипы тестирования, техники, подходы, а также собственный тест план (Performance Test Plan - PTP). В данном посте и рассмотрим из чего этот план состоит.

Objective / Цель

Здесь описывается общая цель планируемого нагрузочного тестирования. Ставятся вопросы, на которые необходимо получить ответы в результате нагрузочного тестирования. Общая цель PTP может заключаться в том, чтобы оценить время отклика системы, пропускную способность и использование ресурсов при нормальных и пиковых нагрузках. Например, сколько одновременных пользователей система может обслуживать в какой-то конкретной конфигурации? Или, в какой конфигурации система может поддержать какое-то конкретное количество пользователей?

Test Objectives / Цель тестирования

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

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

System Overview / Описание системы

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

Types of Performance Testing to be Conducted / Планируемые виды нагрузочного тестирования

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

Acceptance Criteria / Критерии приемки

Описываются критерии, по которым будем считать проведенное тестирование законченным.

Test Data / Тестовые данные

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

System Configuration / Конфигурация системы

Описание конфигурации системы.

Test Environment / Тестовое окружение

Описание окружения, которое будет использовано при тестировании, и обоснование почему такое.

Test Tools / Инструменты тестирования

Описание с обоснованием выбранных инструментов тестирования. Это могут быть тестовые генераторы, дополнительные скрипты, выбранная CI/CD система, выбранные инструменты для анализа результатов и др.

Profiles / Профили

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

Relevant Metrics / Метрики

Здесь описываются метрики, которые мы будем использовать для анализа.

Risks / Риски

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

А также, не стесняемся добавлять всё, что считаем нужным в тест план для составления картины о том как именно мы собираемся проводить нагрузочное тестирование.