Общие вопросы

Вопрос: Что представляет собой сервис AWS Device Farm?

Сервис AWS Device Farm позволяет разработчикам повышать качество приложений, сокращать время выхода на рынок и увеличивать удовлетворенность пользователей путем тестирования приложений и взаимодействия с реальными устройствами с Android или iOS в облаке AWS. Разработчики могут загружать свои приложения и скрипты для тестирования и выполнять автоматизированные тесты параллельно на сотнях реальных устройств, получая результаты, снимки экрана, видео и показатели производительности за считанные минуты. Сервис также позволяет им заниматься отладкой и воспроизведением проблем пользователей, используя касания, жесты и другие способы взаимодействия с устройством через веб‑браузер.

Вопрос: Кому и в каких целях стоит использовать сервис AWS Device Farm?

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

Вопрос: Какие типы приложений поддерживает сервис AWS Device Farm?

Сервис AWS Device Farm поддерживает нативные и гибридные приложения Android и iOS, интернет‑приложения, кросс‑платформенные приложения, включая приложения, созданные в PhoneGap, Titanium, Xamarin, Unity и других средах разработки.

Вопрос: Используются ли в сервисе AWS Device Farm симуляторы или эмуляторы?

В AWS Device Farm тестирование проводится на реальных устройствах, для которых не получены права root. Перечень доступных устройств включает OEM‑устройства и устройства, выпущенные под брендами операторов связи.

Организация тестирования и сеансов удаленного доступа

Вопрос: Какие браузеры поддерживает консоль AWS Device Farm?

AWS Device Farm работает в Internet Explorer 9 или более поздних версий, а также в Chrome, Firefox и Safari последних версий.

Вопрос: Какие браузеры поддерживаются при тестировании интернет‑приложений?

При работе с Android тестирование интернет‑приложений выполняется в браузере Chrome, а при работе с iOS – в браузере Safari.

Вопрос: Каков максимально допустимый размер файлов для приложений и тестов?

Сервис AWS Device Farm поддерживает файлы размером до 4 ГБ.

Вопрос: Требуется ли специальная подготовка приложения или предоставление исходного кода?

Для использования встроенных тестов не требуется специальная подготовка приложения или предоставление исходного кода. Приложения для Android можно отправлять, не изменяя их. При сборке приложения iOS в качестве целевого устройства необходимо указать «iOS Device», а не симулятор.

Вопрос: Хранятся ли мои приложения, тесты и другие файлы на ваших серверах? Если да, то в течение какого времени?

Система автоматически удаляет загруженные приложения и файлы через 30 дней. Результаты тестирования, снимки экрана и видео хранятся 15 месяцев. Удалить файлы и результаты можно в любое время с помощью консоли или API AWS Device Farm.

Вопрос: Как выполняется очистка устройств после завершения тестирования?

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

Мы продолжаем добавлять дополнительные этапы очистки и улучшать процесс очистки, однако сохраняется возможность того, что в некоторых случаях данные между сеансами будут сохраняться, особенно если система устройства используется за пределами контекста приложения. По этой причине, а также в связи с тем что сервис AWS Device Farm выполняет захват видео и ведет журналы действий, происходящих во время использования каждого из устройств, в ходе автоматического тестирования и сеансов удаленного доступа не рекомендуется вводить или предоставлять конфиденциальные данные, например информацию, касающуюся аккаунтов (аккаунта Google, Apple ID и др.), личные данные и другие сведения, имеющие отношение к безопасности.

Вопрос: Вносите ли вы изменения в приложение?

В iOS мы заменяем встроенный профиль подготовки профилем подстановки и повторно подписываем приложение. Если вы предоставите вспомогательные данные, мы добавим их к пакету приложения перед его установкой, и они будут присутствовать в изолированной среде приложения. В результате повторной подписи приложения iOS будут удалены некоторые права. Это касается следующих элементов: App Group, Associated Domains, Game Center, HealthKit, HomeKit, Wireless Accessory Configuration, In-App Purchase, Inter-App Audio, Apple Pay, Push Notifications и VPN Configuration & Control.

В Android мы повторно подписываем приложение. Это может привести к нарушению функциональных возможностей, которые зависят от подписи приложения, например повлиять на работу с API Google Maps для Android. Кроме того, это может привести к срабатыванию механизмов защиты от пиратства и взлома, например в продукте DexGuard. Для выполнения встроенных тестов мы можем изменить файл манифеста, чтобы добавить разрешения, необходимые для создания и сохранения снимков экрана.

Выбор устройств

Вопрос: Какие устройства доступны в сервисе AWS Device Farm? Как вы подбираете устройства для включения в список?

В сервисе AWS Device Farm представлен большой (и постоянно пополняемый) перечень устройств с Android, iOS и Fire OS. Мы добавляем новые популярные устройства по мере их выпуска производителями. Мы также добавляем новые устройства при выходе новых версий ОС. См. список доступных устройств.

Вопрос: Есть ли в сервисе AWS Device Farm устройства из других стран – Европы, Китая или Индии?

В настоящее время у нас имеются устройства из Индии. Мы используем статистику рынка и отзывы клиентов для постоянного обновления списка устройств. Если вы заинтересованы в том, чтобы мы добавили в список дополнительные устройства, сообщите нам об этом.

Вопрос: Как выбрать устройства для тестирования? Можно ли выполнить повторное тестирование на том же устройстве?

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

Вопрос: Имеются ли на тестовых устройствах в сервисе AWS Device Farm какие‑либо предустановленные приложения?

Да, на тестовых устройствах есть ряд приложений, предварительно установленных производителем устройства или оператором связи.

Вопрос: Могут ли устройства взаимодействовать с другими сервисами или системами, доступными через Интернет?

Да. На всех устройствах имеется подключение Wi-Fi с доступом к Интернету. Если вы используете внутренние системы (т. е. защищенные корпоративным брандмауэром), внесите диапазон IP-адресов 54.244.50.32–54.244.50.63 в список доверенных IP-адресов. Весь трафик устройств будет поступать с этих IP‑адресов.

Вопрос: Можно ли проверить различные варианты и условия подключения к сети оператора связи?

Возможности проверить фактические варианты подключения к сети оператора связи нет, но для имитации разных типов соединений и условий можно воспользоваться функциональными возможностями моделирования конфигурации сети. При планировании запуска можно выбрать специально подобранный профиль сети, например «3G» или «Lossy LTE», либо создать свой собственный тип, управляя параметрами пропускной способности, джиттера и потерь. Весь трафик Wi-Fi, поступающий от устройства, будет видоизменен и обработан во время тестирования в соответствии с выбранным профилем. Кроме того, можно создавать имитацию динамичных сред, изменяя сетевые параметры в скриптах для тестирования.

Вопрос: Можно ли совершать телефонные звонки или отправлять SMS‑сообщения с тестовых устройств?

Нет, устройства не подключены к сетям операторов связи, поэтому с них невозможно совершать телефонные звонки или отправлять SMS‑сообщения.

Вопрос: Можно ли использовать камеру устройства?

Да, сервис позволяет использовать обе камеры устройства, как фронтальную, так и заднюю. С учетом условий фактического размещения устройств фотографии и видео могут быть темными и размытыми.

Тестирование приложения

Вопрос: У меня еще нет скриптов для автоматизированного тестирования. Что можно сделать с помощью встроенных тестов?

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

Вопрос: Для чего используется фаззинг?

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

Вопрос: Я выполняю тестирование, используя автоматизированную среду. Какие среды поддерживает сервис?

Для тестирования приложений для iOS, Android и FireOS в настоящее время поддерживаются среды Appium Java JUnit, Appium Java TestNG, Appium Python, Calabash, Instrumentation (в т. ч. JUnit, Espresso, Robotium и любые тесты с применением инструментальных средств), UI Automation, UI Automator и XCTest (в т. ч. XCUI и KIF). Подробную информацию и актуальный список см. в документации.

Вопрос: Какие тестовые среды поддерживаются для интернет‑приложений?

Сервис позволяет выполнять тесты, написанные с помощью Appium Java JUnit, Appium Java TestNG или Appium Python.

Вопрос: Можете ли вы добавить поддержку измененной среды или среды, которую я самостоятельно разработал?

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

Вопрос: Каким образом сервис AWS Device Farm принимает решение о том, в какой момент тестирования выполнять снимок экрана?

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

Вопрос: Доступны ли сервисы Google Play на устройствах Android? Какая версия установлена?

Да, сервисы Google Play установлены на тех устройствах, которые поддерживают их. Сервисы обновляются по мере выхода их новых версий.

Вопрос: Имеется ли на устройствах с Android аккаунт Google, используемый по умолчанию?

Нет, на устройствах нет активного аккаунта Google.

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

Сервис AWS Device Farm поддерживает такие среды, как Espresso и Robotium, которые включают в себя инструменты для создания скриптов записи и воспроизведения.

Вопрос: Требуется ли в iOS добавлять идентификаторы UDID сервиса к профилю подготовки?

Нет, сервис AWS Device Farm автоматически заменяет профиль подготовки и повторно подписывает приложение, чтобы его можно было развернуть на наших устройствах.

Вопрос: Мое приложение для iOS не содержит отладочных символов. Можно ли предоставить сервису AWS Device Farm файл dSYM?

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

Вопрос: В моем приложении для Android используется обфускация. Можно ли тестировать его в сервисе AWS Device Farm?

Да, если вы используете ProGuard. Если для борьбы с пиратством вы используете решение DexGuard, мы не сможем изменить подпись приложения и выполнить его тестирование.

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

Несмотря на то что устройства имеют доступ к сети Интернет, мы не можем гарантировать, что рекламные объявления будут отображаться. Мы рекомендуем удалять рекламу из сборок, тестируемых в сервисе AWS Device Farm.

Вопрос: Можно ли в процессе тестирования получить доступ к компьютеру, к которому подключено устройство (или к его оболочке)? Можно ли выходить в Интернет с этого компьютера?

Да. Если вы используете клиент‑серверную среду, например Calabash, Appium или UI Automation, с компьютера, к которому подключено устройство, можно подключаться к Интернету и выполнять ограниченный перечень команд оболочки.

Вопрос: Мне необходимо предоставить своему приложению мультимедийные или другие данные. Как это сделать?

Вы можете предоставить архив в формате ZIP объемом до 4 ГБ. В Android он будет извлечен в корневой каталог внешней памяти, а в iOS – в изолированную среду вашего приложения. Файлы расширения (OBB) Android будут автоматически помещены в подходящую папку, которая соответствует используемой версии ОС. Подробные сведения см. в руководстве для разработчиков.

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

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

Вопрос: Можно ли протестировать процесс обновления моего приложения? Как установить старую версию моего приложения?

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

Вопрос: Мое приложение использует сервисы определения местоположения. Можно ли указать физическое местоположение устройства?

Да, можно указать координаты широты и долготы, которые будут использоваться для переопределения GPS‑данных устройства.

Вопрос: Можно ли запускать тесты, связанные с локализацией? Как изменить язык устройства?

Да, можно указать локаль (например, «en_US»), чтобы переопределить значение локали, используемое для устройства по умолчанию.

Вопрос: Сколько потребуется времени, чтобы запустить тесты?

Система немедленно помещает тесты в очередь на выполнение, и обычно тестирование начинается в течение нескольких минут. Если одно или несколько устройств недоступны, то задание, связанное с тестированием для этих устройств, будет оставаться в очереди, пока они не станут доступны. При этом тестирование на других доступных устройствах будет запущено сразу.

Вопрос: Каковы ограничения по максимальной продолжительности теста?

Максимально допустимая продолжительность теста составляет 60 минут. Если вам нужно увеличить этот тайм‑аут, свяжитесь с нами.

Вопрос: Позволяет ли сервис AWS Device Farm использовать API для выполнения тестов и получения результатов?

Да. В сервисе имеется подключаемый модуль для среды непрерывной интеграции Jenkins и подключаемый модуль Gradle, совместимый с Android Studio. Кроме того, в сервисе AWS Device Farm имеется программная поддержка всех возможностей консоли, в том числе настройки тестов и скачивания результатов выполнения тестов через API. Дополнительную информацию см. в справке по API сервиса AWS Device Farm. Помимо API для доступа к сервису AWS Device Farm можно использовать AWS SDK.

Просмотр результатов

Вопрос: Какая информация содержится в отчете о тестировании, предоставляемом сервисом AWS Device Farm?

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

Вопрос: Какие журналы устройств включаются в отчеты, предоставляемые сервисом AWS Device Farm?

В отчеты, предоставляемые сервисом AWS Device Farm, включаются все данные, зарегистрированные в logcat (для Android) и в журналах устройств (для iOS), а также в журналах компьютера, к которому подключены устройства, и указанной платформы тестирования.

Вопрос: Мои тесты создают и сохраняют дополнительные файлы журналов. Будут ли эти данные представлены в отчетах AWS Device Farm?

Если в ходе работы какие‑либо данные записываются в logcat (Android) или журнал устройства (iOS), такие записи журналов будут включены в отчет. AWS Device Farm не собирает никаких нестандартных журналов или других артефактов, хотя позволяет с помощью тестового скрипта передавать файлы, используя интернет‑подключение самого устройства или компьютера, к которому оно подключено.

Цены

Вопрос: Сколько стоит использование сервиса AWS Device Farm?

Плата начисляется поминутно на основании продолжительности тестирования на каждом выбранном устройстве. Бесплатная пробная версия сервиса AWS Device Farm включает 1000 минут использования устройств.* По истечении этого времени взимается плата в размере 0,17 USD за минуту использования устройства. При росте объемов тестирования можно воспользоваться безлимитным тарифным планом, который предусматривает тестирование без ограничений с фиксированной оплатой в размере 250 USD в месяц за одно устройство.

Вопрос: Каковы условия работы с бесплатной пробной версией?

Первые 1000 минут работы с устройствами предоставляются бесплатно.* Это разовая пробная версия, и ею нельзя воспользоваться повторно. После окончания пробного периода будет начисляться плата по стандартному тарифу 0,17 USD за минуту использования устройства.

Вопрос: Что такое минута использования устройства?

Минута использования устройства – это расчетная единица для выставления счетов. Минуты использования устройства представляют собой значение измерения времени (в минутах) на установку, выполнение и удаление приложения, а также выполнение тестов на каждом устройстве, которое вы выбрали для тестирования. Цена за единицу остается постоянной независимо от устройства, теста и типа приложения. Плата за минуты использования устройства взимается только для тех тестов, которые завершились без каких-либо ошибок, связанных с устройством или системой. Аналогично, для сеансов удаленного доступа время использования устройств измеряется с момента, когда начинается подготовка устройства по вашим техническим условиям, и до момента удаления всех приложений и данных, переданных вами на устройство.

Использование ресурсов можно динамически масштабировать в соответствии с потребностями бизнеса без каких‑либо лимитов или предварительных обязательств.

Вопрос: Каковы условия работы с бесплатной пробной версией?

Первые 1000 минут работы с устройствами предоставляются бесплатно.* Это разовая пробная версия, и ею нельзя воспользоваться повторно. После окончания пробного периода будет начисляться плата по стандартному тарифу 0,17 USD за минуту использования устройства.

Вопрос: Что такое безлимитный тарифный план и как работают слоты устройств?

Безлимитные тарифные планы предоставляют возможности неограниченного тестирования и удаленный доступ по цене от 250 USD в месяц. Цены на безлимитные тарифные планы зависят от количества слотов устройств, приобретенных для каждого типа использования (то есть автоматизированного тестирования или удаленного доступа) и семейства устройств (например, Android или iOS). Стоимость каждого слота составляет 250 USD в месяц. Количество слотов устройств соответствует количеству параллельных операций тестирования.

Например, если вы приобретете десять слотов для автоматизированного тестирования устройств Android и запланируете тестирование на 100 устройствах, сервис Device Farm будет выполнять тесты одновременно не более чем на десяти устройствах, пока все тесты на выбранных вами устройствах не будут завершены. Приобретение большего количества слотов позволит быстрее получить конечный результат. Вне зависимости от количества выполняемых тестов и сеансов удаленного доступа в месяц будет начисляться фиксированная ежемесячная оплата в размере 250 USD за слот устройства. Клиенты могут в любой момент отменить подписку на один или несколько слотов устройств. Отмена вступит в силу со следующей даты продления (дня месяца, в который был куплен первый активный слот устройства). Подробную информацию см. в нашей документации.

Вопрос: Как быть, если планы тестирования изменились и мне нужно добавить или удалить слоты устройств?

Слоты устройств можно добавлять в любое время, они становятся доступны моментально. Кроме того, клиенты могут в любой момент отменить подписку на один или несколько слотов устройств. Отмена вступит в силу со следующей даты продления (дня месяца, в который был куплен первый активный слот устройства).

Вопрос: Можно ли продолжать использовать поминутную тарификацию, подключив безлимитный тарифный план?

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

Вопрос: Что такое частное устройство?

Частное устройство – это физический инстанс телефона или планшета, используемый только определенным аккаунтом. Частные устройства могут иметь специальные статические конфигурации и работать на специальных образах ОС. Каждое устройство развертывается от имени пользователя и по истечении подписки удаляется.

Вопрос: Как работает подписка на частные устройства и сколько она стоит?

Каждое частное устройство, связанное с аккаунтом пользователя, считается подпиской на частное устройство. Стоимость месячной подписки составляет от 200 USD/месяц. Она зависит от цены устройства и подразделяется по уровням. После истечения минимального периода времени подписки можно в любое время аннулировать свою подписку. Свяжитесь с нами для получения дополнительной информации.

Вопрос: Можно ли одновременно использовать частные и публичные устройства?

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

Product-Page_Standard-Icons_01_Product-Features_SqInk
Подробнее о ценах на продукт

Узнайте подробнее о ценах на AWS Device Farm.

Подробнее 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
Зарегистрировать бесплатный аккаунт

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

Регистрация 
Product-Page_Standard-Icons_03_Start-Building_SqInk
Начать разработку в консоли

Начните разработку с помощью AWS Device Farm в консоли AWS.

Начало работы