Команда Programming Store спроектировала и внедрила DevOps-конвейер, который прошел несколько этапов эволюции вместе с продуктом:
1) Базовый уровень: статический анализПервым шагом стал запуск конвейера в Jenkins в 2020 году. Он забирал конфигурацию из хранилища и проводил ее статический анализ в SonarQube. Это дало первое объективное понимание технического долга и соответствия кода стандартам.
2) Расширение: Дымовое и сценарное тестированиеСледом в конвейер добавили автоматический запуск дымовых тестов, проверили, что формы объектов (справочников, документов, отчетов) успешно открываются и не падают с ошибками. Сценарии, которые разрабатывали аналитики в SPPR, автоматически выгружались, компилировались и исполнялись. Результаты тестов стали собираться в наглядные отчеты Allure.
3) Переход на новую архитектуру: EDT и GitВ 2024 году команда «СИТЕК» совершила важный шаг — перешла на разработку в 1С: EDT с использованием Git. Инфраструктуру конвейера полностью перестроили под новый стек и перенесли в GitLab CI. Jenkins вывели из эксплуатации, а процесс стал полностью прозрачным для команды разработки.
4) Пиковая нагрузка: Оптимизация и параллелизацияС ростом количества автотестов время выполнения полной проверки достигло 14 часов. Чтобы не тормозить разработку, мы внедрили параллельный запуск:
- Сценарные тесты распределили по 4 базам одновременно;
- Дымовые тесты под разными ролями пользователей также запускаются параллельно, что позволило уложить проверку в приемлемое ночное окно.