TGViewer
Журнал инженера-программиста Журнал инженера-программиста @software_engineer_notes · 247 subscribers
Post #279 173
Когда я начинал в IRP Team, то моей задачей на испытательный срок было создание инструмента для мокирования (имитации поведения) внешних веб-сервисов. Команде был нужен этот инструмент для покрытия автотестами операций с порталами электронных документов.

Поскольку задача мне ставилась для целей тестирования, то я не создавал совсем новый "велосипед" и функционал поместил в расширении для юнит-тестирования. Оглядываясь назад, это уже не кажется красивым решением, так как юниты запускаются отдельно и независимо от интеграционных тестов на базе Vanessa-Automation (для которых моки и создавались). Хотя возможно "Units" давно пора немного расширить и переименовать в "Testing"? Или даже забрать в ядро? 🤔

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

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

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

Небольшая автоматизация и работа полетела!

#понедельник #тестирование #мокирование
  • 👍 3
More from @software_engineer_notes
  1. Oct 3, 2026"Вы автоматизируете хаос" - этим страхом любят пугать своих бизнес-заказчиков консалтеры,…
  2. Sep 28, 2026Уже второй проект на работе делаю в методике "парного программирования" с Claude Code. И с…
  3. Sep 13, 2026За последний месяц произошло много событий, но наиболее интересным является использование…
  4. Sep 1, 2026Самая обычная бумажная книга учета - это пока лучший инструмент фиксации проектных изменен…
  5. Aug 31, 2026Очень показательная причина моей нелюбви реализации сравнения/объединения конфигураций в 1…
  6. Aug 29, 2026О концепции LLM-Wiki я впервые прочитал на X (Twitter). Чтобы позже ознакомится детальнее,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →