Портфолио Назад к списку

Тестирование производительности электронной системы здравоохранения

Logo


  •  Стресс-тестирование
  •  Тестирование производительности

Бизнес-цель


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

Ход проекта


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

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

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

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

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

Обмен сообщениями между пользователем и системой основывался на технологии WebSocket. Каждое действие пользователя вызывало около 50 сообщений WebSocket; один скрипт состоял из около 13 000 сообщений WebSocket.

Чтобы сэкономить время, затрачиваемое на запись и обработку всех запросов вручную, команда «Точки качества» разработала решение с использованием языка программирования Python, которое сократило время записи одного сценария более чем в 10 раз.

Заказчик остался доволен полученными результатами и продолжил сотрудничество с QA-командой по иным направлениям обеспечения качества.


Инструменты:

WebSocket
Python

Результаты в цифрах

  • Глобальное усовершенствование пользовательского сайта. Требовался редизайн карточки, листинга товаров, переход на новые сервисы, добавление возможности поиска по конкретному адресу пользователя, а не по региону. До этого пользователь узнавал о наличии / отсутствии товара только в корзине после указания конкретного адреса. Для проведения одновременного тестирования крупных задач и поддержки текущей работоспособности сайта были внедрены а/б-тест и фича-флаги.
  • 13

    тысяч сообщений WebSocket приходилось на один скрипт

  • х10

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

  • 100%

    соблюдение сроков

Реализованные проекты

Портфолио