Автоматизация тестирования мобильного приложения на ненативном стеке
-
-
40 мин
Исторически мобильный 2ГИС для iOS и Android разрабатывался на базе фреймворка Qt. Чтобы покрывать автотестами обе платформы, использовался стек автоматизации на Python + Appium.
Потом пути Android и iOS разошлись. Команда iOS перешла на более традиционные для Apple технологии, а Android продолжил начатый путь.
Спустя несколько лет команды увеличились в несколько раз, авторегрессия стала использоваться чаще, покрывать тестами хотелось быстрее, а тестовая инфраструктура обросла сотнями тестов и сделанными на скорую руку "костылями".
Команда ощутила недостатки системы автоматизации в виде нестабильностей, долгой регрессии и "костылей" во фреймворке, из-за которых масштабировать систему и обновлять версии инструментов стало практически невозможно.
В команде приняли решение обновлять тестовую инфраструктуру.
В своём рассказе поделюсь, на что хотели перейти и почему остались на Python + Appium, какая поддержка для автоматизации нужна в приложении и какие у этих решений есть плюсы и минусы.