Мобильные устройства стали неотъемлемой частью жизни любого человека. В среднем молодые люди тратят на смартфоны порядка 5 часов в день, что вынуждает любые, даже самые малоизвестные сервисы и компании, задумываться о собственном мобильном приложении. Таким образом, основной задачей разработки становится продукт, который сможет использовать любой пользователь целевой аудитории заказчика и при этом оставаться довольным работой с ним.
Мобильное приложение – это удобно: и доступ есть в любое время, и пользоваться можно научить даже ребенка. Основной проблемой является наличие огромного количества устройств, на которых оно не просто должно работать, а еще и выглядеть круто, дорого и поднимать авторитет заказчика в глазах его пользователей.
Любую проблему можно решить, не так ли? Первое решение, приходящее в голову, – давайте оценим аудиторию, рынок, купим самые популярные устройства и будем на них тестировать. Но стоит сразу задуматься, будет ли тестировщик, прошедший обучение QA с нуля, спать спокойно ночью, зная, что у него всего лишь 10 устройств из двух тысяч? Двух тысяч, Карл! Может ли он рассчитывать на достаточное покрытие рынка? В ходе одного из таких размышлений (наверняка) появилась идея облачных сервисов для тестирования.
Итак, самые известные сервисы:
1. SauceLabs – saucelabs.com
- более 800 комбинаций Browser/OS/Platform;
- интеграция со всеми известными CI-решениями;
- более 200 реальных мобильных устройств с возможностью ручного тестирования и трансляцией экрана.
2. BitBar – bitbar.com
- 381 мобильное устройство;
- поддержка самых популярных фреймворков для написания авто-тестов;
- интеграция с JIRA.
3. Keynote – keynote.com
- более 300 мобильных устройств;
- интеграция со всеми известными CI-решениями;
- огромные возможности по сбору аналитики об использовании приложения;
- краш-репорты;
- возможность выбора оператора сотовой связи при тестировании, запись логов и видео.
4. Xamarin Test Cloud – testcloud.xamarin.com
- более 2800 устройств;
- входит в комплексное решение от компании Microsoft, направленное на разработку мобильных приложений.
Плюсы облачных сервисов:
- нет необходимости содержать реальную ферму устройств;
- новые модели телефонов практически сразу появляются в сервисе;
- многообразие устройств;
- нет ограничения с технологической точки зрения – можно тестировать хоть нативные, хоть web-приложения;
- запись логов, генерация читабельных отчетов, мониторинг использования памяти и процессора устройств.
Минусы облачных сервисов:
- высокая стоимость;
- нет возможности проверять кейсы, связанные с изменением состояния сети;
- необходимость бронировать устройства;
- возможна ситуация, когда нужное устройство будет кем-то забронировано.
Таким образом, можно заключить, что облачные сервисы не являются панацеей от всех болезней, но, пользуясь ими с умом, возможно максимально приблизить себя к единорогу адаптивной верстки и спать спокойно :)