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

Тестирование решений для улучшения взаимодействия пользователей внутренних и внешних сервисов МегаМаркета

Logo
Клиент: МегаМаркет
  • Функциональное тестирование
  • Автоматизация тестирования
  • Тестирование интерфейса
  • Написание тестовой документации
  • Тестирование требований
  • Управление релизами

Бизнес-цель

МегаМаркет — мультикатегорийный маркетплейс, принадлежащий ПАО «Сбербанк» (80%). По итогам 1 полугодия 2022 года на маркетплейсе представлено более 5 млн товаров более чем от 8 000 магазинов в 16 основных категориях. МегаМаркет доставляет товары более чем в 1000 городов России.

ООО «Маркетплейс» обратился в «Точку качества» за тестированием ИТ-решений клиента. Заказчик хотел упростить взаимодействие между внутренними сервисами компании и взаимодействие операторов доставки с внешними сервисами.

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

Перед нашими специалистами стояли следующие задачи:

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

Обзор проекта

В ходе реализации проекта эксперты «Точки качества» провели тестирование взаимодействия внутренних сервисов с сервисами Logistic Integration Team, а также интеграцию с сервисами операторов доставки. 

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

Реализованные функции:

Реализация LIS (Logistics Integration Service)

LIS Adapter

Микросервис, предоставляющий единый интерфейс для управления грузовыми местами и доставками в third-party логистических партнёров (3PL). Позволяет регистрировать грузовые места и совершать доставку.

Эксперты провели интеграцию с сервисами операторов «Маршрут», «Логсис», «V7», «ДоставкаГуру», «Почта России СЦ», «Почта России 3PL», «IML», «Пятёрочка», «Боксберри», DPD, СДЭК, «ПикПоинт», «Лабиринт», «Сберлогистика СЦ», «Сберлогистика 3PL».

Реализация Location Service 2

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

Реализация LIS (Logistics Integration Service)

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

Реализация TPL Extender

Микросервис, имитирующий работу сервиса оператора по передаче данных о пунктах самовывоза. Он нужен для корректного взаимодействия сервисов, т.к. у стороннего сервиса не было возможности передавать информацию по API или по HTTP.

Реализация LogInformator (Логистический Информатор)

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

Реализация Location Service2 UI (LS UI)

Управление Location Service 2. Сервис нужен для управления данными при взаимодействии с Location Service2.

Реализация LIS Event Collector

Микросервис для сбора данных о состоянии исполнения от операторов и обмена данными по статусам доставок и грузомест.

Сервис осуществляет запросы и обрабатывает ответы от API

Сервис имеет базу данных для хранения всех получаемых событий.

Он также взаимодействует с другими сервисами внутри компании

Реализация LIS Event Collector UI (LIS EC UI)

Сервис нужен для просмотра записей из базы данных LIS Event Collector.

Реализация LIS Command Executor

Сервис, отвечающий за исключение повторных обработок регистраций. Он берёт на себя полный цикл обработки запросов на регистрацию заказов, предназначение которого — хранение и обработка запросов из ОМС к контрагентам.

Реализация LIS Delivery Gate

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

Реализация «Кабинета Логиста»

  1. Schedule Service. Это сервис графиков, который предоставляет интерфейс рендеринга человекочитаемых графиков в формат битмап. Функциональность создавалась как полный аналог старого сервиса Schedule, созданного на платформе 1С.
  2. АРМ нулевой мили. Сервис позволяет пользователям формировать заявки для забора отправлений у мерчантов и отправку на СЦ/Хабы. Цель: получить функциональный аналог 1С версии, реализованный на веб-технологиях, чтобы была возможность быстро вносить изменения.
  3. Zero Mile Warehouse Moderation Service. Сервис модерации складов, который предназначен для обработки заявок на модерацию параметров склада мерчантов. Цель: упростить сотрудникам, отвечающим за логистику, управление изменениями, которые вносят продавцы в личном кабинете.

Вызовы проекта

  1. Проблемы с коммуникацией между командой тестирования и сторонними сервисами. Коммуникация с коллегами из сторонних сервисов через менеджеров продукта была долгой и непродуктивной. Для решения проблемы было решено перевести взаимодействие в прямую коммуникацию. Это позволило увеличить скорость разбора инцидентов, сделать более продуктивными обсуждения и уточнения разрабатываемой функциональности.
  2. Из-за сложности бизнес-логики некоторые нюансы работы новой функциональности были упущены при разработке. Команда тестирования подключалась к процессу реализации продукта на этапе согласования бизнес-требований, что позволило не только выявлять дефекты на ранних этапах, но и учитывать все технические и логические нюансы функциональности на этапе разработки.
  3. Зависимость скорости доставки продукта в продакшн от скорости работы смежных команд. Чтобы минимизировать данный фактор провели стратегическую сессию между представителями заинтересованных команд и выработали механизм, как именно следует разрабатывать подобную функциональность.
  4. Частая сменяемость менеджеров на проекте. Чтобы избежать потери экспертизы, инженеры по тестированию регулярно делились опытом с новыми специалистами, помогали в разработке требований и поддерживали базу знаний проекта в актуальном состоянии.
  5. Не были настроены процессы работы с задачами в команде. Специалисты по тестированию выдвинули предложение по настройке грамотного процесса, после чего воплотили его в жизнь.

Результаты

Благодаря сотрудничеству команды тестирования «Точки качества» и МегаМаркета удалось:

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

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

  • Результаты в цифрах
  • 2
    инженера по тестированию на проекте
  • 3
    года продолжительность проекта
  • 100%
    соблюдение сроков

Технологии и инструменты

  • dbeaver
  • docker
  • gitlab
  • goland
  • Kadeck
  • locust
  • postman
  • pycharm
  • Pytest
  • Python
  • allure2
  • Playwright

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

портфолио