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

Почти 70% потребителей признают, что скорость работы страницы влияет на их готовность совершить покупку в интернет-магазине. - Unbounce, 2019 

Принципы 

  • Тестирование должно соответствовать определенным ожиданиям. 

  • Результаты и тестирование должны быть воспроизводимыми. 

  • Результаты должны быть читаемы и сравнимы с ожиданиями заинтересованных сторон. 

  • Тестирование должно проводиться в среде, которая максимально приближена к реальной. 

  • Необходимо учитывать сроки и стоимость проекта. 

Операционные профили, профили нагрузки и генераторы нагрузки 

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

  1. Во-первых, получить доступ и определить, какие данные необходимо собрать.

  • Роли и пользователи (администраторы, обычные пользователи, пользователи с уникальными правами). 

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

  • Спросить себя, сколько пользователей для каждой роли обычно получают доступ и используют систему. 

  1. Определить способ сбора данных.

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

  • Также может помочь проверка функциональной документации системы. 

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

  1. После того как все данные собраны, их необходимо оценить, чтобы убедиться в их достаточности.

Профили нагрузки. После сбора всей информации об операционном профиле мы можем создать профиль нагрузки. При создании профиля нагрузки тип теста производительности будет определять способ построения профиля. 

Необходимо определить некоторые ключевые термины: 

  • Ramp-up - увеличение нагрузки через регулярные промежутки времени (добавление одного пользователя в минуту). 

  • Ramp-down - снижение нагрузки через регулярные промежутки времени.

  • Steps - немедленное изменение нагрузки (добавление 50 пользователей одновременно каждые 3 минуты). 

  • Predefined Distribution (предопределенное распределение) - определяет конкретный период для использования профиля нагрузки.  

Примеры профилей нагрузки:

Генератор нагрузки — программное средство, которое генерирует нагрузку на основе предоставленного профиля работы и нагрузки. Примером генератора нагрузки является JMeter. 

Метрики:

Показатели производительности могут варьироваться в зависимости от среды пользователя/заинтересованной стороны. 

  1. Техническая среда (мобильная, веб-приложение и т.д.) 

  • Время отклика 

  • Пропускная способность 

  • Время обработки 

  • Использование ресурсов 

  1. Операционная среда 

  • Время запуска/выключения 

  • Оповещения 

  • Резервное копирование/восстановление 

  1. Бизнес среда 

  • Соглашение об уровне обслуживания (Service Level Agreements) 

  • Пропускная способность

  • Бизнес-процессы (эффективность) 

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

Собираем всё вместе 

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

  • Стоимость.

  • Насколько стабильным является инструмент? Сам инструмент может вызвать проблемы с производительностью, известные как эффект зондирования. 

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

  • Активно ли поддерживается и обновляется инструмент? 

  • Опыт тестировщиков. Различные инструменты могут использовать разный язык, поэтому хорошо выбрать инструмент с языком, который знаком тестировщикам. 

При разработке сценариев следует обратить внимание еще на один момент - "время на обдумывание". Когда сценарии выполняются без него, предполагается, что пользователи выполняют задачи мгновенно, но это не так. Некоторые инструменты позволяют устанавливать случайное время на обдумывание, но оно должно быть включено во все сценарии, особенно когда имитируется пользователь.

Комментарии (0)