Бизнес-цель
Заказчик — компания, которая оказывает услуги по консалтингу и предоставляет инновационные программные решения другим компаниям. Тестируемый продукт — веб-система, разработанная для оптимизации цепочки поставок, начиная от производства медикаментов и заканчивая их доставкой конечным пользователям. Бизнес-цель заказчика состояла в том, чтобы обеспечить безупречную работу данного программного продукта.
Ход проекта
При проведении тестирования производительности QA-инженеры использовали поведенческий метод. Он основывается на точном воспроизведении работы реальных пользователей и ориентирован на создание позитивного клиентского опыта. Поведенческий подход позволяет оценить, насколько быстро система может реагировать на действия пользователей и как она ведёт себя при определённой нагрузке.
На старте проекта специалисты разработали стратегию тестирования. Она включала:
- исследование характеристик системы
- разработку реалистичных тестовых сценариев
- создание набора тестов с применением поведенческого метода
- настройку онлайн-мониторинга системных аппаратных ресурсов и графиков показателей производительности
Созданные тест-кейсы эмулировали поведение пользователей: заполняли информацию о пациентах, фазе лечения, о лекарствах и их дозировке. Они также строили план по доставке медикаментов в разные страны; генерировали и скачивали отчет со всей заполненной информацией.
Данные сценарии гарантировали, что пользователь может добавлять, просматривать, редактировать и удалять все необходимые данные через веб-интерфейс различными способами.
Для получения максимально достоверных результатов, специалисты «Точки качества» провели нагрузочное и стресс-тестирование. QA-инженеры определили лимит по количеству одновременно работающих пользователей; установили, какие транзакции проходят наиболее медленно, и предложили улучшения.
Специалисты также нашли неточности в разработке (например, дублирующийся ответ от сервера), а также обнаружили, что на сервере хранились старые данные, которые влияли на загрузку страницы.
Обмен сообщениями между пользователем и системой основывался на технологии WebSocket. Каждое действие пользователя вызывало около 50 сообщений WebSocket; один скрипт состоял из около 13 000 сообщений WebSocket.
Чтобы сэкономить время, затрачиваемое на запись и обработку всех запросов вручную, команда «Точки качества» разработала решение с использованием языка программирования Python, которое сократило время записи одного сценария более чем в 10 раз.
Заказчик остался доволен полученными результатами и продолжил сотрудничество с QA-командой по иным направлениям обеспечения качества.
Результаты в цифрах:
13 тысяч сообщений WebSocket приходилось на один скрипт
х10 раз сократилось время записи одного сценария
100% соблюдение сроков проекта
Инструменты:
WebSocket
Python