Блог a1qa

О тестировании и качестве ПО

Как измерить эффективность вашего веб-сервиса?

Клиентский опыт объединяет эмоции человека от взаимодействия с компанией, и всё чаще инструментом получения этого опыта становятся веб-сервисы (сайты, программы, мобильные приложения и прочее).

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

На снижение удовлетворённости пользователя в отношении веб-сервисов могут влиять:

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

Каждый из этих факторов способен привести к отказу от используемого программного продукта в пользу конкурентов. Согласно статистике, 23% мобильных приложений удаляются после получения первого опыта взаимодействия (user experience). Это может происходить ввиду описанных выше случаев или иных факторов, из-за которых остаются негативные впечатления.

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

Сегодня мы рассмотрим следующие показатели:

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

Это период, за который сервер отвечает на пользовательский запрос (скорость загрузки страницы, выдачи поисковых запросов, подсчёта и анализа данных).

Метрики производительности: время отклика

Продолжительное ожидание при получении ответа для пользователя означает потерю времени, а это снижает удовлетворённость от взаимодействия с продуктом. Об этом говорят данные исследовательского портала Think with Google: если время загрузки страницы превышает 3 секунды, то около 53% посетителей готовы закрыть сайт и перейти на другой.

Продолжительная загрузка также влияет на конверсию, снижая её почти на 20% за каждые несколько секунд пользовательского ожидания.

Увеличение времени отклика зависит от числа одновременно работающих пользователей, сложности вводимого запроса и т. д. Чтобы получить объективную информацию о программном продукте, стоит проанализировать и среднестатистические показатели.

Средние значения

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

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

Но даже при удовлетворительных средних показателях может произойти отток посетителей или снижение пользовательского интереса. В этом случае стоит обратиться к анализу пиковых показателей времени загрузки.

Пиковые значения

Это наиболее высокие, выходящие за рамки средних, значения времени, которое пользователь проводит в ожидании.

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

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

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

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

Одновременно работающие пользователи

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

Достичь максимальной реалистичности нагрузки и получить эффект, соответствующий фактической производительности системы, можно при помощи виртуальных пользователей.

Метрики производительности: виртуальные пользователи

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

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

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

Запросы в секунду

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

Метрики производительности: запросы в секунду

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

Чем быстрее выполняется каждый запрос в отдельности, тем больше запросов возможно обработать в секунду. Для пользователя этот показатель конвертируется в скорость взаимодействия с элементами веб-сервиса.

Его нужно учитывать при оценке качества работы ПО. Ведь низкие показатели числа обрабатываемых в секунду запросов могут обернуться неудовлетворительной работой сервера при возрастающем интересе к веб-сервису.

Транзакции в секунду

Этот показатель отражает число успешно завершённых за единицу времени транзакций, последовательных операций, которые сгруппированы в логическую цепочку.

Метрики производительности: транзакции в секунду

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

  1. Определить баланс на счету 1.
  2. Сократить его на 15 денежных единиц.
  3. Сохранить обновленные данные счета 1.
  4. Определить баланс 2.
  5. Прибавить списанную сумму.
  6. Сохранить новые данные.

Успешной является та транзакция, каждый этап которой был завершён без проблем.

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

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

Но если корень проблемы лежит в низкой производительности программного продукта, то ошибочные выводы могут привести к:

  • плохой работе веб-сервиса, влияющей на репутацию компании;
  • лишней трате бюджетных средств на исправление ложных дефектов;
  • привлечению большего числа клиентов, которые останутся недовольны качеством работы программного продукта.

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

Итог

Параметры оценки производительности ПО, которых мы коснулись в этой статье, позволяют объективно оценить качество работы веб-сервиса.

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

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

Поделиться статьей: