Мобильные приложения: автоматизируем автоматизацию
Алёна ПономаренкоRelease Engineer в Zillion Whales
• В мобильных играх с 2011 года• Zillion Whales, ex i-Free• Building & shipping:
a. Взаимодействие со сторами, соблюдение гайдлайнов
b. Выдача артефактов сторовc. Помощь со сборкой билдов и с
тестированиемd. Релизы
[email protected] Allien Poe в соц сетях
Особенности тестирования мобильных приложений
• Разнообразие магазинов платформ • Google Play, • Amazon AppStore, • Samsung Apps, • etc• фрагментация девайсов (даже у iOS) • нужен целый зоопарк • и много времени• автоматизация на мобильных устройствах всё ещё нетривиальна
Фермы мобильных устройств
• Физические устройства, не эмуляторы• Поэтому доступны дополнительные функции• Сотни устройств• Варианты OS и прошивки• Новые регулярно добавляются
Залить билд, подождать и получить результаты
• Google Cloud Test Lab• Amazon App Testing Service• Testdroid App Crawler
Google Cloud Test Lab
• Всё ещё в бета-тесте• Зато пока доступно бесплатно (нужен аккаунт Google Cloud)• Запускается на физических девайсах• Можно подключить прямо к Android Studio• Помимо автотестов, можно писать свои тесты с помощью Espresso и
Robotium
Выводы
• Бета!• Пока доступен небольшой список девайсов, обещают добавить
больше• Сохраняется только один скриншот, зато есть видеозапись всего
процесса• В нашем случае приложение ближе к концу выкинуло ошибку, судя по
видео, но фактически в результатах это не отразилось
Amazon App Testing Service
• Бесплатен после регистрации в Amazon Developer Console• Только Amazon-девайсы (Fire телефоны/планшеты/TV)• Проверяет в том числе исходный код в поисках: • несовместимых библиотек• неподдерживаемых Amazon-девайсами опций• неправильного использования Amazon API
• В итоге формируется отчёт, в том числе в пригодном для печати виде
Как выглядит результат на хорошем приложении
• Эвенты • Скриншоты• Логи• Память• Процессор
Вывод
• Проверяет, полностью ли совместим билд с Amazon API. Если нет, будут даны конкретные рекомендации по библиотекам и манифесту
• Если билд падает, будут доступны шаги воспроизведения, скриншоты, логи и точные характеристики девайса
• На скриншотах можно увидеть проблемы UI, если просматривать вручную
Testdroid App Crawler
• Бесплатно доступно небольшое количество девайсов (8 Android + 2 iOS на данный момент)
• Минимальный план за 50 долларов в месяц даёт доступ ко всем девайсам и 5 часов их использования
• Доступно тестирование вручную• Можно подключить Appium или Calabash
Выводы
• Бесплатно доступно небольшое количество девайсов• Нет скриншотов• Зато удобный просмотр логов • Не всегда информативные сообщения об ошибках
Итоговое сравнение и рекомендацииGoogle Cloud Test Lab Amazon App Testing Service Testdroid App Crawler
Цена
Девайсы
Полнота информации об ошибках
Пока (?) бесплатно
Пока (?) 15
- Пропустил краш
+ Есть видео
Бесплатно
Все Amazon
- Только Amazon+ Указывает на
несовпадение библиотек и API
Есть бесплатный и платный тарифы
10 на бесплатном и больше 400 на платном
- Нет скриншотов+ Удобный
просмотр логов
Бонус :) Samsung Remote Test Lab
• Бесплатно с аккаунтом Samsung Developer• 20 кредитов каждый день, один кредит = 15 минут одного девайса• Даёт доступ только к Samsung устройствам• Ручное тестирование, может быть довольно медленным из-за
соединения