фермы для тестирования мобильных приложений

AWS Device Farm

1000 минут использования устройств бесплатно

AWS Device Farm – это сервис для тестирования приложений, который позволяет повысить производительность мобильных и веб-приложений. Для этого используются различные браузеры для настольных компьютеров и реальные мобильные устройства, поэтому вам не требуется создавать собственную инфраструктуру для тестов. Сервис позволяет проводить тесты одновременно в нескольких браузерах для настольных компьютеров или использовать для этого реальные мобильные устройства. Это ускоряет процесс тестирования, во время которого также создаются видео и журналы для быстрого выявления ошибок в работе вашего приложения.

Тестирование на реальных мобильных устройствах

Автоматизированное тестирование

Параллельное тестирование приложений на множестве физических устройств в облаке AWS Cloud. С помощью наших встроенных инфраструктур вы сможете тестировать свои приложения без каких-либо сценариев. Также вам доступны наши автоматизированные инфраструктуры для тестирования.

фермы для тестирования мобильных приложений. how automated testing works.0196d195ab6fd8385d135d3222d5fc0dcdeaae7c. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-how automated testing works.0196d195ab6fd8385d135d3222d5fc0dcdeaae7c. картинка фермы для тестирования мобильных приложений. картинка how automated testing works.0196d195ab6fd8385d135d3222d5fc0dcdeaae7c.

Удаленный доступ

Управляйте устройствами с помощью касаний и жестов в режиме реального времени прямо из веб-браузера.

фермы для тестирования мобильных приложений. how remote access works.00aca74abab81d8ef5497e4003c377560e51b2cd. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-how remote access works.00aca74abab81d8ef5497e4003c377560e51b2cd. картинка фермы для тестирования мобильных приложений. картинка how remote access works.00aca74abab81d8ef5497e4003c377560e51b2cd.

Тестирование в браузерах для настольных компьютеров

Запускайте тесты Selenium одновременно в разных версиях браузеров Chrome, Internet Explorer и Firefox, которые размещаются в облаке AWS.

Преимущества тестирования с помощью реальных устройств в AWS Device Farm

Тестирование на устройствах, с которыми работают ваши пользователи

Запускайте тесты на множестве разнообразных физических устройств. В отличие от эмуляторов, физические устройства позволяют точнее определить, каким образом пользователи взаимодействуют с вашим приложением, и при этом учесть такие факторы, как объем памяти, использование процессора, местонахождение, а также изменения прошивки или программного обеспечения, внесенные производителем или оператором. База устройств постоянно пополняется. Посмотреть список устройств.

Воспроизведение и быстрое устранение ошибок

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

Моделирование реальных условий

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

Выбор подходящих тестов

Запустите встроенный пакет тестирования (без написания сценариев) или модифицируйте тесты с помощью сред тестирования с открытым исходным кодом, таких как Appium, Calabash или Espresso (см. список поддерживаемых сред). Тестирование можно также выполнять вручную с помощью удаленного доступа.

Интеграция с рабочим процессом разработки

Воспользуйтесь подключаемыми модулями и API сервиса для автоматической инициации тестов и получения результатов из интегрированных сред разработки и сред непрерывной интеграции, таких как Android Studio или Jenkins.

Настройте собственную лабораторию частных устройств в облаке

В нашей лаборатории частных устройств вы можете выбрать устройства с iOS и Android, которые будут доступны только вам. Конфигурации этих устройств в Device Farm точно соответствуют вашим требованиям, а настройки сохраняются между сеансами. Поскольку устройства используются только вами, вам не нужно ждать, пока они освободятся.

Преимущества тестирования в браузерах для настольных компьютеров в AWS Device Farm

Запуск тестов на нескольких инстансах для браузеров одновременно

Благодаря полностью управляемому набору браузеров, доступному в Device Farm, вы можете запускать несколько тестов одновременно, чтобы ускорить процесс тестирования. При этом применяется оплата по факту использования. Это значит, что вам не надо беспокоиться о дополнительных расходах, так как вы платите только за общее количество минут, израсходованных на тестирование.

Быстрое выявление и исправление ошибок

Чтобы быстро обнаружить, проанализировать и исправить ошибки в работе приложения, можно использовать видео, журналы консоли, журналы операций и журналы веб-драйверов, которые создает Device Farm.

Тестирование в нескольких браузерах для настольных компьютеров и в разных версиях браузеров

Запускайте тесты в нескольких браузерах для настольных компьютеров, включая Chrome, Firefox и Internet Explorer, чтобы обеспечить правильную работу приложений в разных браузерах.

Источник

Наши цели и задачи

(спешащий читатель, можешь мотать до следующего раздела)

Мы занимаемся разработкой финансового приложения для иностранного рынка, которое доступно в разных форматах: для десктоп-браузеров (веб-сайт и расширение для Google Chrome), для мобильных браузеров, а так же в виде гибридного приложения для телефонов. В связи со спецификой приложения, мы особое внимание уделяем тестированию приложения на различных конфигурациях и устройствах. Для нас важна стабильная и безопасная работа приложения как на настольных браузерах наших клиентов, так и на их любых устройствах.

Причиной поиска облачной фермы устройств для тестирования для нас стала смена формата работы с офисного на полностью удалённый и распределённый (между городами и странами). То есть, если раньше для тестирования мы могли раньше собрать разные устройства в кучу (в буквальном смысле) и протестировать в ручном режиме за одним столом очередную сборку, то сейчас это стало сделать попросту невозможно. Более того, с ростом функционала, для уменьшения ручной работы, регрессионные наборы важных тестов мы автоматизируем, а значит, после сборки нам нужно иметь возможность позвать тесты на желаемой конфигурации и устройстве, причём лучше это сделать сразу же, как только сборка раскатится на staging.

При этом самым простым и очевидным решением является использование эмуляторов для Android и симуляторов для iOS устройств в нашем DevOps конвеере. Однако, что сравнительно легко реализуется на рабочем компьютере разработчика, для использования в облаке становится сложной и дорогой задачей. Для быстрой работы того же эмулятора Android требуется x86 сервер с поддержкой HAXVM, а для симулятора iOS — только MacOS устройство с xcode. Но, к сожалению, даже решив такую задачу остаётся вопрос с разрывом между поведением программного обеспечения на эмуляторах и реальных устройствах. Например каждый второй релиз мы ловим странные баги на Samsung устройствах, которые не воспроизводятся на эмуляторах. Ну, и, конечно редкие экзотические «китайцы» «радуют» уникальным и багами, которые тоже хотелось бы ловить ещё на этапе разработки.

В результате у нас появилось понимание необходимости использования облачной фермы мобильных устройств, на которых мы могли бы быстро прогонять свои тесты и при необходимости производить отладку в ручном режиме. И к которой был бы доступ у всей нашей команды из любой точки мира (мы любим работать даже в путешествиях).

фермы для тестирования мобильных приложений. tkmv 3efjgaskkz1tbveeo0rh 4. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-tkmv 3efjgaskkz1tbveeo0rh 4. картинка фермы для тестирования мобильных приложений. картинка tkmv 3efjgaskkz1tbveeo0rh 4.

Наши тесты написаны на Python 3.7 (далее это будет важно), как стек мы используем tox + pytest + Selenium + Appium, ну и небольшой набор полезных питонячих библиотек. Мы обязательно тестируем машины на Windows и MacOS с браузерами Edge, Firefox, Chrome, Safari, а так же устройства на Android и iOS — с браузерами и приложением. Тестов у нас на каждое устройство не сильно много (меньше тысячи), но при тестировании в один поток на устройствах полный набор выполняется пару часов. Поэтому критерием выбора сервиса для нас будет:

Желательно, но не обязательно:

Результаты исследования рынка

За неделю я пошерстил интернет и попробовал с десяток разных сервисов. Большинство из них предоставляет бесплатное время для тестирования возможностей. Результаты моего исследования, тем более выводы носят субъективный характер. Ваше мнение и результаты могут отличатся от моего.

На Хабре я нашёл статью за 2017 год посвящённую этой же теме, но с тех пор появились и новые сервисы, да и наша задача чуть строже. Так, например, «вкусные» сервисы вроде Samsung Remote Test Lab, Firebase Test Lab, Xamarin Test Cloud нам, увы, не подходят.

Вне игры

Samsung Remote Test Lab

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Сервис бесплатно предоставляет возможность попробовать поработать с различными устройствами Samsung, в том числе с самыми новыми, включая телевизоры или умные часы на Tizen (ограничение — максимум 10 часов в день, за день сервис бесплатно выдаёт 10 кредитов, что равно 2,5 часам в день, минимальная сессия — полчаса (2 кредита)). Это очень неплохо для отладки и поиска корневых причин возникновения ошибок на определённых устройствах, сервис даже предоставляет доступ к удалённой отладке (remote debug bridge, доступ к консоли и системным логам), но, к сожалению, сервис не предоставляет API-доступ к устройствам. Единственная возможность «автоматизировать» — это записать пользовательские действия и затем их воспроизвести в местном средстве автоматизации.

Firebase Test Lab

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Visual Studio App Center

фермы для тестирования мобильных приложений. 3g oprmudubtaulwkgqjahqot74. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-3g oprmudubtaulwkgqjahqot74. картинка фермы для тестирования мобильных приложений. картинка 3g oprmudubtaulwkgqjahqot74.

Сервисы на выбор

AWS Device Farm

фермы для тестирования мобильных приложений. znpbr9hu4dkgiqjcwoudrviaid8. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-znpbr9hu4dkgiqjcwoudrviaid8. картинка фермы для тестирования мобильных приложений. картинка znpbr9hu4dkgiqjcwoudrviaid8.

Пожалуй, самая мощная ферма для тестирования на виртуальных и реальных устройствах на сегодняшний день (более 2500 устройств). Для нас это был приоритетный сервис, так как наши сервисы как раз развёрнуты в облаке AWS, кроме того, цены за минуту времени устройства начинаются от 17 центов. AWS позволяет работать как с нативными фреймворками, так и с Appium, Calabash, и другими фреймворками автоматизированного тестирования. Помимо автоматизированного тестирования, сервис предоставляет возможность ручной отладки. Ну и 1000 минут «на попробовать» — это очень заманчиво. Однако, дьявол как водится, кроется в деталях. С точки зрения тестирования у AWS есть несколько особенностей.

Мы, как я уже упомянул, используем Python 3.7, однако AWS Device Farm до сих пор работает с Python 2.7.6 (см. мануал здесь). И из коробки ничего не знает про tox. Для нас это означает отсутствие ряда возможностей и необходимость переработки части тестов для обеспечения обратной совместимости, так и создания окружения в обход tox. Кроме того, достаточно странный механизм загрузки тестового пакета (архив) подразумевает так же и загрузку приложения для тестирования. В нашем случае, если мы будем тестировать наш сервис через мобильный браузер, то загрузка приложения — лишний шаг. Впрочем, приложение можно заменить «заглушкой», а в окружении Python 2.7 создать venv с Python 3.7, и тогда в нём создать окружение с tox, который…

фермы для тестирования мобильных приложений. S5u. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-S5u. картинка фермы для тестирования мобильных приложений. картинка S5u.

Amazon не был бы Amazon, если бы всё упиралось в старые версии. В качестве альтернативы (и ни у какого сервиса ниже такой возможности не будет) AWS предлагает использовать AWS Device Farm через AWS CLI (command line interface) (см. мануал здесь). То есть, мы можем подключить устройство из облака как реальное устройство к нашему компьютеру в режиме удалённой отладки (remote debug), правда, предварительно заменив adb на патченое (в списке бинарника под linux нет, но уверен, в природе он существует). То есть, настроив AWS CLI, для тестирования нам потребуется выполнить буквально несколько команд (ведь мы не собираемся использовать GUI в виде AWS Device Farm App).

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Если мы хотим тестировать приложение, его так же можно загрузить через AWS SDK.

Но я не рассказал ключевой нюанс здесь. Мы снова натыкаемся на дьявола в деталях. Дело в том, что опция удалённой отладки доступна только если для AWS мы используем Private Devices план. Во-первых, данная возможность доступна только под запрос (нужно написать письмо в Amazon), во-вторых опция доступна для региона us-west-2, а в-третьих, фактически эта опция нас возвращает к сценарию, когда у нас есть сервер для тестирования с набором (или хотя бы одним) устройств подключенных к нему. Плюсы очевидны — мы это устройство можем использовать монопольно, что очевидно безопаснее и быстрее, с другой стороны лишаемся главного преимущества — выбора и разнообразия устройств.

Сервис мне в целом понравился, но для нашей команды, увы, в нём слишком много «но».

Bitbar

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

фермы для тестирования мобильных приложений. oqte v0jovfktqprbfpjzyt6kbw. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-oqte v0jovfktqprbfpjzyt6kbw. картинка фермы для тестирования мобильных приложений. картинка oqte v0jovfktqprbfpjzyt6kbw.

Процесс настройки прост, как взаимодействие двух перстов с асфальтом:

Kobiton

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

фермы для тестирования мобильных приложений. 0b8np9ceky s0e2schcgitmgi4w. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0b8np9ceky s0e2schcgitmgi4w. картинка фермы для тестирования мобильных приложений. картинка 0b8np9ceky s0e2schcgitmgi4w.

Настройка так же очень проста, в отличие от bitbar’a почти что оригинальный Appium.

BrowserStack

фермы для тестирования мобильных приложений. ugztedawkg6ed9okmi1htaactgc. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-ugztedawkg6ed9okmi1htaactgc. картинка фермы для тестирования мобильных приложений. картинка ugztedawkg6ed9okmi1htaactgc.

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Пример кода для приложения

Experitest

фермы для тестирования мобильных приложений. do7duvaiufyiok6muyz zuerya4. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-do7duvaiufyiok6muyz zuerya4. картинка фермы для тестирования мобильных приложений. картинка do7duvaiufyiok6muyz zuerya4.

фермы для тестирования мобильных приложений. fiz3wy8hud0aa5zd28 86zluljg. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-fiz3wy8hud0aa5zd28 86zluljg. картинка фермы для тестирования мобильных приложений. картинка fiz3wy8hud0aa5zd28 86zluljg.

SauceLabs

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Perfecto

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

фермы для тестирования мобильных приложений. 4xl so pdliodrvlt7huphfnybe. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-4xl so pdliodrvlt7huphfnybe. картинка фермы для тестирования мобильных приложений. картинка 4xl so pdliodrvlt7huphfnybe.

По всем критериям выбора сервисы весьма схожи, разница между сервисами в их производительности и цене (если нет особенностей, например, как в случае AWS). Поэтому сведём данные исследования в таблицу, посмотрим на скорость сервисов (с учётом подключения через US VPN), а так же на цену, для удобства сравнивая среднее месячное время тестирования на устройствах (5 релизов в месяц, по 2 часа тестирования на Android и iOS устройстве = 20 часов). В качестве референсных значений я использую данные со своего локального компьютера с эмулятором, опять-таки подключаясь к нему для чистоты эксперимента через VPN в США).

фермы для тестирования мобильных приложений. m91kymmminidgp5q ivtq110dqs. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-m91kymmminidgp5q ivtq110dqs. картинка фермы для тестирования мобильных приложений. картинка m91kymmminidgp5q ivtq110dqs.

Выводы

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

Вариант А: Если вам важна быстрота проверки, и нужны проверки сразу на десятках разных устройств — ваш выбор — Bitbar.

Вариант Б: Если у вас в приоритете результаты с референсных устройств, а конфигурационное тестирование вторично (но необходимо) — ваш выбор — BrowserStack. Это как раз наш кейс, так как статистически — 90% всех ошибок — это ошибки с референсных платформ и устройств (чаще всего баги общие для всех референсных платформ сразу). Оставшиеся 8% — это ошибки MS IE, с отказом от поддержки IE — 2% ошибки MS Edge, а 0,5% ошибки на специфичных конфигурациях.

Вариант В: Если вам важны проверки особых условий, вроде некачественной связи, геопозиции или Touch/FaceID, то ваш выбор — Experitest.

Ну а на долгосрочной перспективе, если ваша компания занимает большой офис, ваша работа Full-Time, то, как правило, организация своей, пусть даже мини-лаборатории с сервером под эмуляторы с подключенными 2-3 устройствами обойдутся дешевле и удобнее, чем использование специализированных сервисов.

Источник

DevOps: 7 лучших ферм устройств для тестирования своих iOS- и Android-приложений

фермы для тестирования мобильных приложений. 1*av d9kL0baUltCT2kLOBw. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-1*av d9kL0baUltCT2kLOBw. картинка фермы для тестирования мобильных приложений. картинка 1*av d9kL0baUltCT2kLOBw.

Jun 19, 2017 · 6 min read

В нашей новой статье для журнала Хакер #220 мы рассмотрели облачные фермы устройств для тестирования мобильных приложений.
Облачные фермы устройств являются важным элементом конвейера Mobile DevOps и позволяют здорово сократить трудозатраты на тестирование, а также увеличить покрытие устройств.

фермы для тестирования мобильных приложений. 1*W1F3kFvpsbpZ7RvkSFO4MQ. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-1*W1F3kFvpsbpZ7RvkSFO4MQ. картинка фермы для тестирования мобильных приложений. картинка 1*W1F3kFvpsbpZ7RvkSFO4MQ.

Ссылка на оригинал (пока требуется подписка на журнал Хакер): https://xakep.ru/2017/06/19/mobile-testing/

Еще в далекие времена, когда балом смартфонов заправ л яли Nokia и Microsoft, возникла одна характерная особенность мобильной разработки — разношерстность устройств по характеристикам и модификациям операционок. Приходилось тестировать приложение не только на разных версиях ОС, но и на разных физических устройствах. После выхода iOS самих моделей телефонов всегда было мало, поэтому с ними проблем не возникало. А вот в мире Android проблема фрагментации встала во весь рост. Моделей на рынке тысячи, и все время появляются новые, и твое приложение или игра должны гарантированно работать на каждой из них. Добавим еще разные версии прошивок на этих моделях… И поймем, что вручную потребуется куча человеко-часов для проверки каждого релиза.

Фермы устройств

Так как проблема с разнообразием парка устройств возникла еще в стародавние времена, уже Nokia начала предлагать своим разработчикам сервис по аренде смартфонов. Можно было поставить приложение на устройство и в режиме удаленного управления руками пройти по ключевым сценариям. Это было бесплатно, и некоторые устройства приходилось долго ждать, зато такое тестирование давало разработчику надежду, что софт будет работать корректно на различных смартфонах и, значит, у пользователей претензий не окажется. Начинание было хорошим, и фермы устройств получили свое дальнейшее развитие — сами ОС начали предоставлять инструменты для имитации действий пользователя. То есть тестировщик или разработчик пишут скрипт, притворяющийся человеком. Добавь сюда удобные DevOps-инструменты для сборки и автоматического запуска этих скриптов — и можно забыть о той мрачной картине с кучей человеко-часов для каждого релиза.

В прошлых статьях (первая и вторая, если ты их еще не читал) мы уже рассматривали использование мобильных DevOps-конвейеров, поэтому сейчас можем сфокусироваться на подборе отдельной облачной фермы устройств.

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Сегодня мы поговорим про популярные облачные фермы устройств: Firebase Test Lab, Samsung Remote Test Lab, AWS Device Farm, Sauce Labs, Xamarin Test Cloud, Perfecto.

Как это работает

Встроенная автоматизация UI-тестирования появилась относительно недавно: iOS 9.0 (XCTest UI) и Android 4.3 (UI Automator, хотя Espresso и работал с Android 2.2).

На нижнем уровне все реализовано достаточно просто: вместе с приложением запускается специальный скрипт, который заставляет ОС имитировать работу реального пользователя: касания, поглаживания, жесты пальцами и нажатия на кнопки устройства.

Существует несколько популярных подсистем для выполнения скриптов: Appium, Calabash, Espresso, Robotium, UI Automator for Android, XCTest for iOS, которые, в свою очередь, поддерживают один или несколько языков программирования — Ruby, C#, Java, Python, Swift.

Бесплатно и сердито

Так как проблема с разнородностью парка устройств актуальна в первую очередь для Android, то знакомство мы начнем с ферм Google и Samsung.

фермы для тестирования мобильных приложений. 0*wP59Pf8 wvrNEKll. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*wP59Pf8 wvrNEKll. картинка фермы для тестирования мобильных приложений. картинка 0*wP59Pf8 wvrNEKll.

Samsung Remote Test Lab

Первым на очереди у нас будет сервис Samsung Remote Test Lab. Этот сервис технологически уже устарел и не стоил бы упоминания в нашей статье, если бы не одно но. Samsung — лидер и один из законодателей на рынке Android-смартфонов, поэтому ранний доступ к флагманским новинкам позволит проверить работу твоего приложения еще до появления устройств в продаже. Плюс там есть доступ к устройствам на базе Tizen: линейка смартфонов Z и смарт-часы Gear.

фермы для тестирования мобильных приложений. . фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-. картинка фермы для тестирования мобильных приложений. картинка .

Работа с сервисом выглядит следующим образом: ты резервируешь устройство и запускаешь специальное Java-приложение, которое предоставляет удаленный доступ к экрану и устройствам ввода (тачскрин, кнопки). На текущий момент доступно 25 моделей смартфонов и планшетов, каждая из моделей в нескольких экземплярах и модификациях. Автоматизация делается на уровне ручной записи последовательности событий, а устанавливать приложение надо руками. В целом не ахти какие возможности, но зато совершенно бесплатно. И самое вкусное — Samsung Remote Test Lab поддерживает удобный режим удаленной отладки! Так что можно смело рекомендовать этот сервис в качестве дополнительной фермы для ручного тестирования на устройствах Samsung.

Firebase Test Lab for Android

Наш следующий сервис разработан в стенах Google и называется Firebase Test Lab for Android. В целом Firebase хорошо подходит командам, специализирующимся на разработке для Android, а ферма устройств — это лишь один из инструментов. На текущий момент доступно не так много моделей устройств (около 30, список ниже на скриншоте), однако имеется также возможность запуска на эмуляторах. Test Lab включен в единую подписку на сервис Firebase и для старта может быть совершенно бесплатен.

фермы для тестирования мобильных приложений. 0*jcBvlaS ymW43hUf. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*jcBvlaS ymW43hUf. картинка фермы для тестирования мобильных приложений. картинка 0*jcBvlaS ymW43hUf.

Firebase Test Lab, в отличие от сервиса Samsung, легко интегрировать в DevOps-конвейер. Тестовые сценарии возможно реализовать с помощью инструментов Espresso, Robotium, UI Automator 2.0 и Robo. Во время выполнения сценариев делаются скриншоты. В целом это хорошее решение для Android-разработки небольших проектов с использованием нативных инструментов. Дешево (бесплатно!) и сердито.

Специализированные профессиональные фермы

Не Samsung’ом единым живут Android-разработчики, поэтому продолжить наш обзор хотелось бы более крупными фермами, которые поддерживают iOS, имеют большой парк моделей и требуют денег.

AWS Device Farm

фермы для тестирования мобильных приложений. 0*TMhLUz6VQEvy1m37. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*TMhLUz6VQEvy1m37. картинка фермы для тестирования мобильных приложений. картинка 0*TMhLUz6VQEvy1m37.

В AWS Device Farm доступно почти 400 устройств (около 100 моделей), цены от 0,17 доллара за минуту, есть анлим (!) и 1000 первых минут бесплатно. Стоит отметить высокое качество сервиса и возможность интеграции в DevOps-конвейер. Для написания скриптов можно использовать Appium (iOS + Android), Calabash (iOS + Android), Espresso (Android), Robotium (Android), UI Automation (iOS) и XCTest (iOS) и ряд других.

Xamarin Test Cloud

фермы для тестирования мобильных приложений. 0*iZMngwkiha6BqtWC. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*iZMngwkiha6BqtWC. картинка фермы для тестирования мобильных приложений. картинка 0*iZMngwkiha6BqtWC.

Следующий профессиональный сервис — Xamarin Test Cloud. Более 2500 (не опечатка) реальных устройств! Поддерживаются iOS, Android и полный набор возможностей (скриншоты, автоматизированные скрипты, видео, обещают еще и удаленную отладку и запись в будущем). За все про все — от 99 долларов в месяц. Сервис идеально подходит как разработчикам кросс-платформенных решений (Xamarin, React Native), так и проектам с широкой пользовательской аудиторией (как следствие — высокий охват модельного ряда). Поддерживает автоматизированные скрипты на базе Calabash и Xamarin.UITest.

Старички

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

Sauce Labs

фермы для тестирования мобильных приложений. 0*crJuaJDXUaG32JV4. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*crJuaJDXUaG32JV4. картинка фермы для тестирования мобильных приложений. картинка 0*crJuaJDXUaG32JV4.

Знакомься, это Sauce Labs. Один из старожилов рынка автоматизированного тестирования. К его созданию приложил руку сам Джейсон Хаггинс (Jason Huggins), разработчик Selenium. Sauce Labs — взрослый сервис для взрослых команд. Цены от 149 долларов в месяц, есть нативные и гибридные приложения для iOS и Android и возможность организовать свое частное облако или провести тестирование в ручном режиме. Есть поддержка интеграции с DevOps-конвейерами и запуск на эмуляторах/симуляторах, хотя самих моделей устройств заявлено не больше двадцати. Другими словами, поклонникам Selenium — самое оно.

Perfecto

фермы для тестирования мобильных приложений. 0*rFC1h4X4oEgQwcHM. фермы для тестирования мобильных приложений фото. фермы для тестирования мобильных приложений-0*rFC1h4X4oEgQwcHM. картинка фермы для тестирования мобильных приложений. картинка 0*rFC1h4X4oEgQwcHM.

И завершим мы наш обзор одной из старейших ферм устройств от компании Perfecto. Еще во времена Symbian и Windows Mobile эта компания начала предлагать свои устройства в аренду. Цены были высокие, но на триале можно было быстренько прогнать приложение и убедиться, что оно работает (или не работает). Для iOS доступно порядка 20 различных моделей, а для Android — больше 50. В качестве фреймворка предлагаю использовать Appium. Тестировать вручную можно бесплатно, а вот автоматизация будет стоить от 299 долларов в месяц.

Итого

Мы рассмотрели самые интересные на текущий момент фермы устройств, позволяющие снять зуд ручного тестирования. Если ты еще не определился, с чего начать, то можешь ориентироваться на следующее:

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *