Appium — это свободно распространяемый фреймворк с открытым исходным кодом, предназначенный для тестирования пользовательского интерфейса мобильных приложений. Он помогает тестировать нативные, гибридные и веб-приложения и проводить автоматизированное тестирование на физических устройствах, а также с помощью эмулятора и симулятора. Он предлагает кросс-платформенное тестирование приложений — единый API работает для сценариев тестирования платформы Android и iOS.
Он не отягощен зависимостью от операционной системы мобильного устройства — у Appium есть фреймворк или оболочка, которые переводят команды Selenium Webdriver в команды UIAutomation (iOS) или UIAutomator (Android) в зависимости от типа устройства, а не любого типа ОС.
Appium поддерживает все языки с клиентскими библиотеками Selenium, такие как: Java, Objective-C, JavaScript с node.js, PHP, Ruby, Python, C# и т. д.
Как скрыть установленные приложения и создать защищённое хранилище БЕЗ РУТ
В этой статье мы поговорим о таких моментах:
- Как Appium работает?
- Необходимые условия для использования Appium
- Установка Appium Desktop
- Appium Inspector
- Подключение эмулятора Android к Appium
- Тест-кейс Appium для нативного Android-приложения (калькулятор)
- Ограничения использования Appium
- Распространенные ошибки и шаги по устранению неполадок в Appium
Как работает Appium?
- Appium — это «HTTP-сервер», написанный с использованием платформы Node.js и управляющий сессиями iOS и Android с использованием проводного протокола Webdriver JSON. Следовательно, перед инициализацией Appium Server в системе необходимо предварительно установить Node.js.
- Когда Appium скачан и установлен, на компьютере настраивается сервер с REST API.
- Он получает запрос на подключение и команду от клиента и выполняет эту команду на мобильных устройствах (Android/iOS).
- Он отвечает ответами HTTP. Опять же, чтобы выполнить этот запрос, он использует платформы автоматизации мобильного тестирования для управления пользовательским интерфейсом приложений. Фреймворк вроде: — Apple Instruments для iOS (Instruments доступен только в Xcode 3.0 или более поздних версиях с OS X v10.5 и более поздних версиях). — Google UIAutomator для Android API уровня 16 или выше. — Selendroid для Android API уровня 15 или ниже.
Необходимое условие для использования APPIUM
- Установить ANDROID SDK (Studio)
- Установить JDK (Java Development Kit)
- Установить Eclipse
- Установить TestNg для Eclipse
- Установить JAR Selenium Server
- Клиентская библиотека Appium
- Информация о приложении APK в Google Play
- js (не требуется — всякий раз, когда сервер Appium установлен, он по умолчанию поставляется с «Node.exe» и NPM. Он включен в текущую версию Appium)
- Установить Appium Desktop
Установка Appium Desktop:
Appium Studio — это приложение с GUI с открытым исходным кодом для установки Appium Server. Он поставляется в комплекте со всеми зависимостями для установки и использования Appium Server. Включает в себя Inspector для получения основной информации о приложениях. А также поставляется с Recorder для создания шаблонного кода для автоматизации мобильных приложений.
Приложение не Поддерживается на вашем Android Устройстве в PLAY MARKET/Плей Маркет ТЕЛЕФОН ANDROID
Шаг 1) Перейдите на http://appium.io/ и загрузите Appium.
Шаг 2) Для Windows выберите исполняемый файл и загрузите его. Размер файла составляет около 162 МБ. Загрузка займет какое-то время в зависимости от скорости интернета.
Шаг 3) Нажмите на скачанный файл exe.
Шаг 4) На компьютере с Windows устанавливать Appium нет необходимости — он запускается прямо из exe. После нажатия на exe в течение нескольких минут увидите следующее.
Если вы пользуетесь Mac, необходимо установить dmg.
Шаг 5) Далее вы увидите окно запуска сервера с предзаполненными параметрами хоста и порта по умолчанию, которые можно изменить. На кнопке старта упоминается используемая версия Appium.
Шаг 6) При нажатии на кнопку запуска сервера на указанном хосте и порту запускается новый сервер. Отобразится журнал работы сервера.
Шаг 7) Нажмите на «New Session Window».
Шаг 8) Можно ввести необходимые данные и начать сеанс.
APPIUM Inspector
Подобно инструменту записи и воспроизведения Selenium IDE, Appium содержит инструмента Inspector для тех же целей. Он записывает и воспроизводит поведение нативного приложения, проверяя DOM, и генерирует тестовые сценарии на любом языке. Однако в настоящее время поддержка Appium Inspector для Microsoft Windows отсутствует. В Windows он запускает Appium Server, но не может проверить элементы. Однако в качестве инструмента для проверки элементов можно использовать UIAutomator viewer.
Шаги для начала работы с Appium Inspector на Mac:
Шаг 1) Загрузите и запустите сервер Appium с IP-адресом по умолчанию 0.0.0.0 и портом 4725.
- Выберите исходный файл или файлы .app из локального для тестирования.
- Поставьте галочку в поле «App Path», чтобы активировать кнопку выбора.
Шаг 2) Теперь нажмите кнопку «Choose», чтобы получить возможность просмотреть и выбрать тестовый файл с локального диска.
Шаг 3) Запустите симулятор на Mac.
Шаг 4) Нажмите кнопку «Launch» в правом верхнем углу, которая активирует значок синего цвета. Снова нажмите на значок синего цвета, он откроет инспектор Appium и симулятор с предварительно выбранным приложением.
Шаг 5). Запуск Appium Inspector покажет иерархию элементов в виде столбцов. Кроме того, пользователь может применять действия с помощью таких кнопок, как Tap, Swipe и т. д.
Шаг 6) Нажмите кнопку «Stop», чтобы остановить запись.
Подключение эмулятора Android к Appium
Шаг 1) Установите Android SDK в свою систему.
Перейдите в Панель управления [Control panel] >> Система и безопасность [System and Security] >> Система [System] и на левой панели нажмите «Продвинутые настройки системы» [Advanced System Settings]. Во всплывающем окне «Свойства системы» [System Properties] перейдите на вкладку «Дополнительно» [Advanced], а затем нажмите кнопку «Переменные среды» [Environment Variables].
Шаг 2) Теперь во всплывающем окне «Переменные среды» [Environment variables] дважды щелкните «Путь» [Path] и установите переменную ANDROID_HOME, которая указывает на ваш каталог SDK. В пути добавьте весь путь к папке SDK.
Шаг 3) Запустите эмулятор Android или подключите любое устройство Android к вашей системе (убедитесь, что на устройстве Android включена опция отладки Android. Чтобы проверить параметр отладки, перейдите в «Настройки устройства» >> «Параметры разработчика» >> Установите флажок «Параметры отладки» [Debugging Option]).
Шаг 4) Откройте командную строку и перейдите в каталог platform-tools вашего Android SDK (например, D:adt-bundle-windows-x86_64-20130514sdkplatform-tools).
Шаг 5) Запустите команду adb devices . Подключенное устройство можно увидеть в списке в окне командной строки. (В CMD наберите >adb devices — эта команда выведет список подключенных экземпляров эмулятора. Например: adb –s emulator-5554 install )
Шаг 6) Запустите команду adb start-server . Она запустит сервер ADB, который будет использоваться Appium для отправки команд на ваше Android-устройство.
Шаг 7) Теперь перейдите в каталог Appium в системе и запустите Appium.exe.
Шаг 8) Не меняйте IP-адрес или номер порта, нажмите кнопку запуска. Ваша консоль Appium начинается с адреса 127.0.0.1:4723, как показано ниже.
Шаг 9) Нажмите кнопку «Пуск», сервер Appium запустится в вашей системе.
Тестовый пример APPIUM для нативного приложения Android (калькулятор)
Шаг 1) Загрузите плагин ADT eclipse или загрузите ADT в комплекте отдельно здесь.
Шаг 2) Откройте Eclipse и создайте новый проект >> Пакет >> Класс (a new Project >> Package >> Class).
Шаг 3) Импортируйте библиотеку Selenium и Testng в этот новый проект.
Шаг 4) Теперь создайте небольшую тестовую программу для «Calculator.app», чтобы суммировать два числа.
Сервер Appium и эмулятор Android из «AVD Manager» и нажмите «Run» >> TestNG. Вышеупомянутая программа запустит Calculator.app на выбранном эмуляторе, и результат отобразится в консоли Eclipse с использованием среды TestNG.
Ограничения использования APPIUM
- Appium не поддерживает тестирование версии Android ниже 4.2.
- Ограниченная поддержка тестирования гибридных приложений, например: невозможно протестировать действие переключения приложения с веб-приложения на нативное и наоборот.
- Нет поддержки запуска Appium Inspector в Microsoft Windows.
Распространенные ошибки и шаги по устранению неполадок в Appium
Действия по устранению ошибок
Ошибка: Требуются следующие параметры, но они не были даны: имя устройства, имя платформы
Добавьте нужные параметры: имя устройства, имя платформы в сценарии APPIUM. например: capabilities.setCapability(«deviceName»,»Emulator»); capabilities.setCapability(«имя_платформы»,»Android»);
Ошибка: Не удалось найти adb. Задайте для переменной среды ANDROID_HOME путь к корневому каталогу Android SDK.
Вероятно, необходимо указать путь к корневому каталогу SDK в системных настройках [Environment Variables] в поле «Path».
error: org.openqa.selenium.SessionNotCreatedException: не удалось создать новый сеанс.
Необходимо указать правильный путь к приложению и перезапустить сервер Appium.
Как найти элемент DOM или XPath в мобильном приложении?
Используйте UIAutomatorviewer, чтобы найти элемент DOM для приложения Android.
Приглашаем всех желающих на открытое занятие «Install Selenoid cluster». На этом открытом уроке рассмотрим разворачивание Selenoid кластера с использованием Docker и разберем, как организовать балансировку нагрузки между Selenoid инстансами. Android смартфона своего чада уже требует установку соответствующих приложений и оплаты недешевой подписки каждый месяц.
Но, к счастью, я нашел способ делать все это бесплатно, и вдобавок получить полный контроль за смартфонами детей, и при этом у каждого из них свой полноценный аккаунт в Google.
Как включить родительский контроль с iPhone на Android
Прежде всего необходимо на iPhone из App Store скачать приложение Google Family Link. На Android смартфоне нужно из Google Play скачать Google Family Link (для детей). Следующим шагом будет создание семейной группы в сервисах Google и добавление в нее родителей и детей:
- открываем приложение на iPhone, входим в свой аккаунт Google (учетную запись Gmail);
- после успешной авторизации нажимаем на три горизонтальные черточки в левом верхнем углу экрана и в открывшемся меню тапаем «Семейная группа»;
Заходим в настройки семейной группы и приглашаем нового члена семьи
Код доступа с экрана iPhone вводим в соответствующее поле Android
Далее ребенку предстоит ввести на своем гаджете пароль от аккаунта Google и указать название устройства, которым нужно управлять, после чего последует ряд окон, описывающих, что именно смогут контролировать родители на смартфоне ребенка. На некоторых из них потребуется просто пролистать информацию, нажимая «Еще», а на некоторых подтвердить согласие на включение родительского контроля, тапом по соответствующей кнопке. Кроме того, на этом этапе будет предложено, какими из установленных на телефоне ребенка приложениями можно пользоваться, а какие заблокировать.
Внимательно читаем и соглашаемся с установкой контроля, а также выбираем, какие из установленных приложений ребенок сможет использовать
На родительском iPhone также придется подтвердить желание настроить родительский контроль для учетной записи ребенка на Android смартфоне и на последнем экране выбрать либо установку всех параметров самому, либо согласиться с рекомендованными настройками.
Родитель на iPhone подтверждает настройку контроля и выбирает одну из опций: настройку вручную в приложении либо стандартные настройки
На последнем этапе я не стал применять стандартные настройки, а решил пройтись уже отдельно в приложении Family Link на iPhone по каждому пункту с учетом того, что мы позволяем своим детям.
Отдельно хочу сказать, что если детям нет 13 лет, то Google требует создать для них отдельный детский аккаунт прямо в приложении Family Link для родителей. Этот вариант лучше в плане тотального контроля над учетной записью ребенка и его смартфоном.
Но в нашем случае у детей уже были созданы до этого полноценные учетные записи в Gmail, и учитывая их возраст, воспитание, окружение, интересы и общение, нами было принято решение сделать контроль более либеральным.
Вообще, техника Apple очень помогает с детьми — вот, например, как мои дети учились дистанционно с помощью iPad.
Как узнать, где находится ребенок с iPhone
Самое главное, ради чего собственно настраивался родительский контроль, — это определение геопозиции Android смартфона на iPhone на постоянной бесплатной основе. Для получения соответствующей информации достаточно на стартовой странице Family Link тапнуть имя или аватар ребенка и на открывшемся экране отобразится участок карты с указанием местонахождения, при тапе по которому откроется полноценный экран с Google Maps. Спасибо Google за бесплатный и вполне точный ответ на вопрос, где находится ребенок.
Карты Google точно укажут местоположение смартфона ребенка
Как контролировать использование смартфона ребенком
Ниже геопозиции Family Link предоставляет отчет о том, какими приложениями и сколько времени пользовался ребенок на смартфоне. При выборе на надписи «Еще» откроется подробный журнал со статистикой за сегодня, вчера, неделю и месяц.
Родителю доступны краткая и полная статистика об использовании гаджета
Как запретить ребенку запускать приложения
Если необходимо запретить запуск каких-то из установленных приложений на смартфоне ребенка, либо ограничить время пользования приложением, переходим на вкладку «Ограничения» и тапаем по песочным часам справа от названия приложения. Нам доступны две опции: задать время использования, или заблокировать приложение совсем.
Родитель может либо заблокировать приложение, либо установить временный лимит на его использование
Также можно задать ограничение и на использование самого гаджета. Для этого на странице аккаунта ребенка в Family Link под краткой статистикой об использовании приложений есть соответствующий раздел с надписью «Настроить». При тапе по последней откроется экран с двумя вкладками: «Ограничения» и «Время сна». На первой соответственно можно задать по дням недели сколько часов ребенку будет доступно устройство, а на второй когда устройство должно быть заблокировано, чтобы не отвлекать от сна.
В случае настройки ограничения, перед непосредственной блокировкой ребенок заранее получит уведомление. Если он продолжит пользоваться гаджетом, то последний в нужное время заблокируется и будет работать только на приём телефонных звонков и совершения экстренного вызова. Впрочем, при получении уведомления у ребенка есть время позвонить родителю и попросить временно отключить ограничение, если смартфон действительно нужен больше отведенного времени.
Как контролировать действия ребенка в Google Play
На странице контролируемого аккаунта на iPhone родителя под именем и аватаркой ребенка есть кнопка «Настройки», нажав на которую, можно попасть на экран настройки дополнительных параметров родительского контроля. В частности для фирменного магазина Google Play можно задавать некоторые ограничения на контент и разрешать либо запрещать установку как платных, так и всех абсолютно приложений без одобрения родителей. Учитывая то, что после скачивания любого контента из магазина на e-mail родителя приходит отчет об этом факте, и любое уже установленное приложение можно заблокировать удаленно, я установил ограничение лишь на платный контент и покупки в приложениях.
В отношении музыки можно запретить доступ к песням с непристойной лексикой, а в отношении книг запретить доступ к контенту сексуального характера. По играм и приложениям можно задействовать цензуру по рейтингам 3+, 7+, 12+, 16+ и 18+.
Контроль действий ребенка в Google Play
Для браузера Chrome возможна блокировка сайтов для взрослых, а также создание родителем своего списка сайтов, к которым ребенок может получить доступ, а также списка заблокированных сайтов. Для Google поиска и YouTube предлагается включение опций «Безопасный поиск» и «Безопасный режим» соответственно.
Фильтры Chrome и YouTube
Дополнительные параметры родительского контроля в Google Family Link
Помимо перечисленных средств родители могут разрешить или запретить ребенку добавлять аккаунты других пользователей на свой гаджет; самостоятельно заходить в настройки своего аккаунта; устанавливать приложения из неизвестных источников; включать режим разработчика. Доступны также отдельно настройки определения местоположения устройства, принадлежащего ребенку, и настройки разрешений доступа приложений к системным ресурсам гаджета: камере, микрофону, геопозиции, контактам, телефону, SMS, календарю и хранилищу.
Потерявшийся где-то дома смартфон легко найти, включив воспроизведение на нем звука. По всем параметрам приложения Google Family Link есть подробное описание. Потеряв небольшое время на изучение справочной информации, можно вполне гибко настроить гаджеты наследников и быть относительно спокойным в отношении их кибербезопасности.
В целом реализация родительского контроля от Google меня вполне порадовала. Взрослые остались с iPhone, дети изучают Android, жизнь идет своим чередом. Расскажите в комментариях и в нашем Telegram-чате, как вы используете родительский контроль, обменяемся опытом.
Источник: appleinsider.ru