Как мы создавали мобильную ферму и что на ней выращивается
Рассказываем, как мы столкнулись с отсутствием российских решений для безопасного тестирования мобильных приложений в закрытом контуре и потому решили создать своё.
Весной 2024 года мы запустили новый для российского рынка продукт — мобильную ферму для тестирования приложений на реальных планшетах и смартфонах, которую можно установить в закрытом контуре компании (on-premise).
Продукт работает так:
В офисе компании физически располагается парк разнообразных мобильных устройств под управлением iOS, Android и HarmonyOS. Они подключаются к серверу и отображаются в едином окне интерфейса приложения Сфера. Мобильная ферма.
- Через приложение сотрудники могут выбрать и забронировать нужные устройства на определенное время, чтобы удаленно проводить тесты. Они получают доступ ко всем функциям смартфона и планшета (память, жесты, камера, сканеры), при этом проводят ручные тесты и запускают автотесты дистанционно.
- Результаты собираются в единое для компании хранилище артефактов тестирования на сервере. Так скриншоты, видеозаписи и работу самых приложений могут посмотреть другие сотрудники, а не только сам тестировщик.
Такой продукт сокращает затраты на оборудование и логистику в 5—10 раз, уменьшает time-to-market и затраты на разработку. А благодаря тому, что решение находится во внутреннем контуре организации, исключаются связанные с безопасностью риски. Также Сфера. Мобильная ферма входит в Единый реестр российского ПО.
Как мы создавали ферму
Изучили конкурентов.
Осенью 2022 года мы искали продукты для тестирования мобильных приложений. Всё, что было доступно на тот момент, это:
Несколько западных продуктов. Они не были адаптированы к российским реалиям и не учитывали местные операционные системы (ОС). Из самого очевидного: не поддерживали кириллицу. К тому же с такими решениями всегда есть риск ухода вендора из страны и отключения поддержки.
Несколько зрелых зарубежных SaaS-платформ, которые не подходят бизнесу из ряда отраслей, где есть повышенные требования к безопасности разработки и хранения данных.
Open source-продукты. Например, OpenSTF. Но у них был ограниченный функционал или юридические, финансовые и репутационные риски, которые сопровождают открытые лицензии.
Мы не нашли ни одного зрелого отечественного продукта для тестирования мобильных приложений, подходящего для установки в закрытом контуре. Это и стало отправной точкой для создания продукта Сфера.Мобильная ферма.
Определили нишу и начали разработку.
В пользу решения формата on-premise говорило не только отсутствие конкурентов, но и возросшее количество утечек персональных данных в стране, объем которых продолжает расти и сейчас, а также увеличение разнообразия мобильных устройств и оболочек брендов. Осенью 2022 года приступили к разработке. Первоначально в команде было три разработчика, дизайнер, аналитик, product owner и тестировщик. Постепенно штат расширялся, хоть роли оставались те же. Вот, что мы сделали.
- Нашли базовое open source-решение, чтобы не начинать с нуля. Выбрали OpenSTF, поскольку тот был единственным вариантом (и сейчас им остается, просто с новым названием Device Farmer). Всё остальное – это или форки OpenSTF, или уже готовые SaaS-сервисы.
- Расширили функционал. Реализовали прокси трафика, добавили возможность проведения тестирования на двух устройствах с одновременной демонстрацией экранов обоих и систему бронирования устройств и другое.
- Переосмыслили интерфейс. Провели исследования, прислушались к предпочтениям пользователей и создали оболочку, которая соответствовала общему брендбуку компании и особенностям клиентского опыта. Сделали продукт похожим на другие решения платформы Сфера.
- Учли российские региональные особенности, например, добавили кириллицу. Также учли отечественные региональные особенности в контексте информационной безопасности.
Рефакторинг – это переписывание кода для улучшения его читаемости, очистки от всего лишнего, устаревшего и неиспользуемого. Такая работа предполагает поиск неоптимальных мест, узких горлышек, пожирателей ресурсов. Мы проводим рефакторинг раз в квартал — отмечаем для себя тонкие места и их устраняем. Самое неприятное здесь то, что рефакторинг не приносит бизнесу прямой выгоды в моменте, но его отсутствие влечет за собой замедление разработки, сложность в тестировании и многочисленные дефекты в будущем. Поэтому выделять на него время необходимо.
5. Зарегистрировали в Едином реестре российского ПО уже к январю 2023 года.
Представили продукт на рынке.
К весне 2024 года мобильная ферма была полностью готова для продаж. Все это время продолжали разработку, добавляли новые фичи и функции.
Доработки и планы
Сегодня Сфера. Мобильная ферма, пожалуй, самое зрелое отечественное решение для мобильного тестирования. Помимо стандартного набора функций для подобных продуктов оно позволяет одновременно работать с двумя устройствами, поддерживает ввод с клавиатуры Unicode (кириллица), резервирование устройств и работу с его файлами, просмотр стека сетевых вызовов.
После запуска продукта весной 2024 года постепенно расширяем функционал. Например, добавили библиотеку пользователя. Это хранилище артефактов тестирования: скриншотов, видеозаписей и других файлов. Теперь на них можно дать ссылку коллеге без скачивания.
Самое сложное и интересное в этой работе — исследование возможностей для реализации нового функционала. Приходится придумывать, как заставить работать функцию в закрытой системе при том, что мы используем только нерутированные устройства. То есть к ферме можно подключить обычное устройство из магазина без специальной подготовки, взлома и перепрошивки ОС.
Если говорить про будущее, то мы планируем сконцентрироваться на четырех направлениях:
Разработка SaaS-версии продукта с продажей мобильных мощностей поминутно.
Создание программно-аппаратного комплекса «Мобильная ферма», чтобы предлагать не только уникальный софт, но также всё необходимое железо кроме самих мобильных устройств. Их клиент сможет выбирать сам под свои нужды.
Расширение линейки поддерживаемых ОС: Аврора ОС, а также других ОС, до которых сможем дотянуться.
Упрощение работы тестировщикам через добавление AI-ассистентов, чтобы все процессы для них были более быстрыми и простыми.
Параллельно с этим продолжим развивать функционал автотестирования, работать с обратной связью от наших пользователей, проводить рефакторинг и исследования, чтобы эволюционно развивать флагманский продукт.