Автотесты и CI/CD для 1С:WMS: DevOps-конвейер на GitLab CI, SonarQube и Vanessa Automation

DevOps-конвейер каждую ночь проверяет тиражную 1С:WMS тестами и анализом кода, и ошибки ловятся до релиза, а не у клиентов.

Разработчик тиражного складского решения на 1С6 мин чтения
4,8 из 5
оценка продукта у пользователей
14 ч
полного прогона уложены в ночное окно
4 базы
для параллельного запуска сценарных тестов
автотесты и CI/CD для 1С:WMS

Задача

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

Как было до проекта

  • Регрессионное тестирование было ручным и занимало часы аналитиков и разработчиков.
  • Исправление одной ошибки могло сломать смежный функционал, и это всплывало слишком поздно.
  • Влияние изменений в одних объектах на связанные никто надёжно не отслеживал.
  • Качество кода проверяли эпизодически, техдолг копился незаметно.

Что я сделал

  1. 1

    Статический анализ

    В 2020 году запустил конвейер в Jenkins: он забирал конфигурацию из хранилища и прогонял её через SonarQube. Впервые появилась объективная картина техдолга и соответствия стандартам.

  2. 2

    Дымовые и сценарные тесты

    Добавил дымовые тесты, которые проверяют, что формы справочников, документов и отчётов открываются без ошибок. Сценарии аналитиков из СППР автоматически выгружаются, компилируются и выполняются в Vanessa Automation, результаты собираются в отчёты Allure.

  3. 3

    Переезд на EDT, Git и GitLab CI

    В 2024 году разработка перешла на 1С:EDT и Git. Я полностью перестроил конвейер под новый стек в GitLab CI и вывел Jenkins из эксплуатации.

  4. 4

    Параллельный запуск

    С ростом числа тестов полная проверка дошла до 14 часов. Распределил сценарные тесты по 4 базам одновременно и параллельно запускаю дымовые тесты под разными ролями, чтобы всё укладывалось в ночное окно.

  5. 5

    Сопровождение инфраструктуры

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

Результат

  • Ошибки ловятся до релиза: утром разработчик получает отчёт по упавшим тестам.
  • Тысячи регрессионных проверок выполняют роботы, аналитики заняты новой функциональностью.
  • Оценка продукта у пользователей выросла и держится на 4,8 из 5, проверки вендора проходят без критических замечаний.
  • У команды и архитектора есть единый источник правды о готовности релиза: Allure и SonarQube.

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

Вопросы по теме

Как настроить CI/CD для 1С?+

Перейти на 1С:EDT и Git, настроить пайплайн в GitLab CI, который собирает конфигурацию, запускает статический анализ и автотесты и публикует отчёты. Начать можно и с хранилища 1С и Jenkins, как в этом проекте.

Что такое дымовые тесты в 1С?+

Это быстрые автоматические проверки, что формы справочников, документов и отчётов открываются без ошибок. Они ловят грубые поломки после любого изменения конфигурации.

Как ускорить прогон автотестов Vanessa Automation?+

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

Технологии

GitLab CIJenkins1С:EDTGitSonarQubeVanessa AutomationСППРAllure

Услуги по теме

Нужно похожее решение?

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

Написать в Telegram

Другие кейсы

регрессионное тестирование 1С
Тестирование и DevOpsРазработчик тиражного решения на 1С (интеграция СКУД с учётными системами)

Регрессионное тестирование 1С на Vanessa Automation: CI/CD-конвейер и контроль стандартов кода

Собрал CI/CD-конвейер для тиражного решения на 1С: регрессионные тесты идут после каждого коммита, ошибок стало вдвое меньше.

Vanessa AutomationVanessa-RunnerGitLab
автоматизация тестирования 1С:ERP
Тестирование и DevOpsПроизводство гофротары

Автоматизация тестирования 1С:ERP на производстве 24/7: дымовые тесты, анализ кода и ноль критических ошибок

Настроил для круглосуточного производства конвейер дымовых тестов и анализа кода 1С:ERP: за первый месяц ни одной критической ошибки в продуктиве.

1С:ERPVanessa AutomationSonarQube
ускорение обновления 1С:УХ
Тестирование и DevOpsIT-компания, интернет-сервис

Ускорение обновления 1С:УХ: обработчики в менеджере потоков сократили обновление с дней до часов

Перенёс обработчики обновления 1С:УХ в менеджер потоков: обновление огромной базы вместо нескольких дней идёт несколько часов.

1С:Управление холдингомОбработчики обновленияФоновые задания