Каждая вторая сборка была нерабочей. Как мы это исправили

Представьте: мобильная сборка CRM для фармы. Устанавливаете сборку, запускаете синхронизацию - и ждете. Полчаса спустя выясняется: она упала. 😩

И это только начало. Нужно найти причину, передать разработчику, дождаться исправления. Иногда на полдня работы нескольких человек. А сборку в тестирование так и не получили.

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

Что я организовала: - Составила план автоматизации и распределила задачи. - Разбила работу примерно на 60 запросов первичной синхронизации - в том порядке, в котором они вызываются в приложении. - Для каждого запроса определили проверки и сроки выполнения. - Вместе с DevOps организовали интеграцию с GitLab и постепенное подключение проверок к CI/CD.

Автозапуск по расписанию и привязку к пайплайнам настраивал DevOps. Мы подключали проверки постепенно и уже на неполном наборе начали ловить ошибки до передачи сборки команде тестирования.

Самым сложным оказалось не написать автотесты.

Нужно было доказать, что на автоматизацию стоит выделить время. Что ее нужно не только создать, но и поддерживать. И что это не отвлечет команду от работы, а в перспективе освободит ее от повторяющихся проверок.

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

Что получили в итоге?

Сборки стали проходить проверку синхронизации до передачи тестировщикам. Разработчик узнавал о проблеме раньше, ручной проверки стало меньше, а вероятность пропустить ошибку снизилась.

Для меня это одна из важных побед в руководстве командой. Не потому, что мы просто автоматизировали 60 запросов. А потому, что изменили сам процесс: перестали тратить часы на обнаружение проблемы уже после получения сборки.

Автоматизация не заменяет тестировщика. Она помогает ему не тратить полдня на сборку, которая все равно не работает. 💪