Автоматизировали регрессионное тестирование 1С на производстве

  • Заказчик
    Крупный производитель гофротары (название под NDA).
    Отрасль
    Производство, ERP.
    Запрос
    Обеспечить стабильную работу 1С: ERP и круглосуточную доступность базы.
    Решение
    Внедрили DevOps-конвейер с автоматическим запуском дымовых тестов и анализом кода, который помогает выявлять ошибки до переноса доработок на продуктив.
    Результат
    Релиз-инженер получает предупреждение о проблемах заранее. Бизнес может отслеживать качество работы команды в динамике. Снижено влияние человеческого фактора. Увеличена прозрачность и управляемость процессов.
    0 критических ошибок после переноса в продуктив за первый месяц.
Старт проекта

На момент обращения:

  • Перенос доработок на продуктив выполнялся вручную
  • Ошибки возникали даже после ручного тестирования
  • При сбое — простои производства, так как предприятие работает 24/7
  • Техническое окно для обновлений — минимально

Запрос заказчика:

Обеспечить круглосуточную доступность базы и стабильность работы системы.

Реализация проекта

  1. В качестве оркестратора был выбран планировщик заданий Windows. В стандартных devops-конвейерах используются такие инструменты, как JenKins, GitLab. Наш выбор был обусловлен рамками проекта и требованием заказчика. Если просто, то планировщик запускает цепочку скриптов по расписанию.
  2. Настроили Vanessa Automation для автоматического тестирования конфигурации. На данном проекте используем именно smoke-тестирование (дымовые тесты). В ходе такого тестирования робот проверяет основные пользовательские сценарии: запуск приложения, корректная навигация между разделами, открытие форм и так далее.
  3. Настроили Allure для анализа результатов тестирования. Визуализация и хранение истории автотестов.
  4. Настроили SonarCube для автоматической проверки кода на ошибки.
  5. Оформили документацию и передали заказчику.

Трудозатраты

  • В команде: 1 DevOps-инженер
  • Общие трудозатраты: ~100 часов
  • Вся документация и инструкции переданы заказчику

Что стоит учесть заказчику

«Мы проверяем релиз, а не данные»

Автотесты проверяют стабильность релиза, но не валидность вводимых данных. Требуется участие бизнес-пользователей на этапе настройки тестов.

Потенциал для развития

Проект имел ограничения по бюджету и срокам. Возможные улучшения:
  • Переход на полноценный CI/CD через Jenkins или GitLab CI
  • Расширение автотестов до сценарных и нагрузочных
  • Визуализация метрик качества через дашборды с показателями стабильности релизов, скоростью реакции на баги и частотой инцидентов

Хотите также? Оставьте заявку — обсудим, как DevOps поможет вашему бизнесу работать без сбоев.