Учебное пособие APPIUM для Android и тестирование мобильных приложений iOS
Что такое Appium?
APPIUM — это свободно распространяемый пользовательский интерфейс мобильного приложения с открытым исходным кодом. Тестирование фреймворк. Appium позволяет тестировать собственные, гибридные и веб-приложения и поддерживает автоматизированное тестирование на физических устройствах, а также в эмуляторе или симуляторе. Он предлагает кросс-платформенное тестирование приложений, т.е. один API работает для обоих. Android и сценарии тестирования платформы iOS.
Он имеет НЕТ зависимость от ОС мобильного устройства. Поскольку у APPIUM есть фреймворк или оболочка, которые переводят Selenium Команды Webdriver в UIAutomation (iOS) или UIAutomator (Android) команды в зависимости от типа устройства, а не любого типа ОС.
Appium поддерживает все языки, которые имеют Selenium клиентские библиотеки, такие как - Java, Цель-C, JavaСценарий с node.js, PHP, Ruby, Python, C # и так далее
Как работает APPIUM?
- Appium представляет собой «HTTP-сервер», написанный с использованием Node.js платформу и управляет iOS и Android сеанс с использованием проводного протокола Webdriver JSON. Следовательно, перед инициализацией Appium Сервер Node.js должен быть предварительно установлен в системе.
- После появления Appium загружается и устанавливается, затем на нашем компьютере настраивается сервер, предоставляющий REST API.
- Он получает запрос на соединение и команду от клиента и выполняет эту команду на мобильных устройствах (Android / iOS).
- Он отвечает HTTP-ответами. Опять же, для выполнения этого запроса он использует платформы автоматизации мобильного тестирования для управления пользовательским интерфейсом приложений. Рамка типа: -
- Apple Instruments для iOS (инструменты доступны только в Xcode 3.0 или новее с OS X v10.5 и новее)
- Google UIAutomator для Android Уровень API 16 или выше
- Selendroid для Android Уровень API 15 или ниже
Необходимое условие для использования APPIUM
- Установите ANDROID SDK (Студия)[Ссылка]-
- Установите JDK (Java Комплект разработчика) [Ссылка]
- Установите Eclipse [Ссылка]
- Установите TestNg для Eclipse [Ссылка]
- Установите Selenium Серверный JAR [Ссылка]
- Appium Клиентская библиотека[Ссылка]
- Информация об APK-приложении в Google Play [Ссылка]
- js (не обязательно – всякий раз, когда Appium Сервер установлен, по умолчанию он поставляется с «Node.exe» и NPM. Он включен в текущую версию Appium.)
- Установите Appium Рабочий стол
Установите Appium Рабочий стол
Appium Studio — это приложение с графическим интерфейсом с открытым исходным кодом, которое можно установить. Appium Сервер. Он поставляется в комплекте со всеми необходимыми условиями для установки и использования. Appium Сервер. Он также имеет инспектор для получения базовой информации о ваших приложениях. Он поставляется с устройством записи для создания шаблонного кода для автоматизации ваших мобильных приложений.
Шаг 1) Перейдите на http://appium.io/ и нажмите «Загрузить» Appium.
Шаг 2) При покупке недвижимости Windows, выберите exe-файл и загрузите. Размер файла составляет около 162 МБ. Загрузка займет время в зависимости от скорости вашего интернета.
Шаг 3) Нажмите на загруженный exe.
Шаг 4) На Windows машина, нет необходимости устанавливать Appium. Он запускается непосредственно из exe. После того, как вы нажмете на exe, вы увидите следующее изображение в течение нескольких минут.
Для Mac вам необходимо установить dmg
Шаг 5) Далее вы увидите окно запуска сервера. Он заполняет параметры хоста и порта по умолчанию, которые вы можете изменить. Также упоминается версия Appium использовался.
Шаг 6) При нажатии кнопки Start Server запускается новый сервер на указанном хосте и порту. Отображается вывод журнала сервера.
Шаг 7) Щелкните Новое окно сеанса..
Шаг 8) Вы можете ввести желаемые возможности и начать сеанс.
АППИУМ Инспектор
Похожий на что Selenium Инструмент записи и воспроизведения IDE, Appium имеет «Инспектор» для записи и воспроизведения. Он записывает и воспроизводит поведение собственного приложения, проверяя DOM, и генерирует тестовые сценарии на любом желаемом языке. Однако на данный момент поддержка отсутствует. Appium Инспектор по Microsoft Windows. В Windows, он запускает Appium Сервер, но не может проверить элементы. Однако средство просмотра UIAutomator можно использовать как вариант для проверки элементов.
Шаги, с которых стоит начать Appium Инспектор на компьютере Mac: -
Шаг 1) Загрузите и начните свой Appium сервер с IP-адресом по умолчанию 0.0.0.0 и портом 4725.
- Выберите исходный файл или файлы .app локально для тестирования.
- Установите флажок «Путь к приложению», чтобы активировать кнопку «Выбрать».
Шаг 2)Теперь нажмите кнопку «Выбрать», чтобы просмотреть и выбрать тестовый файл на локальном диске.
Шаг 3) Запустите Simulator на компьютере Mac.
Шаг 4) Нажмите кнопку «Запустить» в правом верхнем углу, после чего появится значок синего цвета. Снова нажмите на этот синий значок, откроется окно. Appium инспектор и симулятор с заранее выбранным приложением.
Шаг 5)– Запускаем свой Appium Inspector покажет иерархию элементов в виде столбчатой структуры. Также пользователь может применять действия с помощью кнопок, таких как Tap, Swipe и т. д.
Шаг 6) Нажмите кнопку «Стоп», чтобы остановить запись.
Прикреплять Android Эмулятор для Appium
Шаг 1) Установите Android SDK в вашей системе.
Перейдите в Панель управления >> Система и безопасность >> Система и на левой панели нажмите «Дополнительные параметры системы». Во всплывающем окне «Свойства системы» перейдите на вкладку «Дополнительно», а затем нажмите кнопку «Переменные среды».
Шаг 2) Теперь во всплывающем окне «Переменные среды» дважды щелкните «Путь» и установите переменную ANDROID_HOME, которая указывает на ваш каталог SDK. В путь добавьте весь путь к папке SDK.
например –
C:\User\ABC\Desktop\adt-bundled-windows-x86_64-20140321\sdk
Шаг 3) Начните свой Android эмулятор или любой прикрепите любой Android устройство в вашу систему (убедитесь, что у вас есть Android Опция отладки включена в вашем Android устройство. Чтобы проверить опцию отладки. Перейдите в «Настройки устройства» >> «Параметры разработчика» >> установите флажок «Параметры отладки»).
Шаг 4) Откройте командную строку и перейдите к своему Android Каталог \platform-tools\ SDK (например, D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).
Шаг 5)– Запустите команду «adb devices». Вы можете увидеть подключенное устройство в списке командной строки. (В CMD напишите «>adb devices». Эта команда выведет список подключенных экземпляров эмулятора. Например: adb –s emulator-5554 install )
Шаг 6)– Запустите команду «adb start-server». Запустится сервер ADB, который будет использоваться Appium для отправки команд на ваш Android устройства.
Шаг 7) Теперь перейдите к Appium каталог в вашей системе и запустите Appium нажав на Appium.exe файл.
Шаг 8) Не изменяйте IP-адрес или номер порта и нажмите кнопку «Запустить». Твой Appium консоль начинается с адреса 127.0.0.1:4723, как показано ниже.
Шаг 9) Нажмите кнопку «Пуск», Appium сервер начал работать в вашей системе.
Тестовый случай APPIUM для нативного Android Приложение (калькулятор)
Шаг 1)) Загрузите плагин ADT eclipse или загрузите ADT в комплекте отдельно. здесь
Шаг 2) Открыто Eclipse и создайте новый проект >> Пакет >> Класс.
Шаг 3) Импортировать Selenium библиотека и TestNG внутри этого нового проекта.
Шаг 4) Теперь создайте небольшую тестовую программу для «Calculator.app» для суммирования двух чисел.
package src_Appium; import java.net.MalformedURLException; import java.net.URL; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; //import org.openqa.selenium.remote.CapabilityType; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.remote.RemoteWebDriver; import org.testng.annotations.*; public class Calculator { WebDriver driver; @BeforeClass public void setUp() throws MalformedURLException{ //Set up desired capabilities and pass the Android app-activity and app-package to Appium DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("BROWSER_NAME", "Android"); capabilities.setCapability("VERSION", "4.4.2"); capabilities.setCapability("deviceName","Emulator"); capabilities.setCapability("platformName","Android"); capabilities.setCapability("appPackage", "com.android.calculator2"); // This package name of your app (you can get it from apk info app) capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); // This is Launcher activity of your app (you can get it from apk info app) //Create RemoteWebDriver instance and connect to the Appium server //It will launch the Calculator App in Android Device using the configurations specified in Desired Capabilities driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); } @Test public void testCal() throws Exception { //locate the Text on the calculator by using By.name() WebElement two=driver.findElement(By.name("2")); two.click(); WebElement plus=driver.findElement(By.name("+")); plus.click(); WebElement four=driver.findElement(By.name("4")); four.click(); WebElement equalTo=driver.findElement(By.name("=")); equalTo.click(); //locate the edit box of the calculator by using By.tagName() WebElement results=driver.findElement(By.tagName("EditText")); //Check the calculated value on the edit box assert results.getText().equals("6"):"Actual value is : "+results.getText()+" did not match with expected value: 6"; } @AfterClass public void teardown(){ //close the app driver.quit(); } }
Appium Сервер и Android Эмулятор из «AVD Manager» и нажмите «Выполнить» >> TestNG. Вышеуказанная программа запустит «Calculator.app» на выбранном эмуляторе, и результат отобразится под Eclipse консоль с помощью TestNG фреймворк.
Ограничения использования APPIUM
- Appium не поддерживает тестирование Android Версия ниже 4.2
- Ограниченная поддержка тестирования гибридных приложений. например: невозможно протестировать действие переключения приложения с веб-приложения на собственное и наоборот.
- Нет поддержки для запуска Appium Инспектор включен Microsoft Windows.
Распространенные ошибки и действия по их устранению в Appium
Ошибка | Действия по устранению неполадок |
---|---|
ошибка:- Требуются следующие желаемые возможности, но они не были предоставлены: имя устройства, имя платформы | Добавьте желаемые возможности: имя устройства, имя платформы в скрипте APPIUM. Например:capabilities.setCapability («имя_устройства», «эмулятор»); capabilities.setCapability («имя_платформы»,Android»); |
ошибка: Не удалось найти adb. Пожалуйста, установите переменную среды ANDROID_HOME с Android Путь к корневому каталогу SDK. | Вероятно, вам необходимо настроить путь к корневому каталогу SDK в системных «Переменных среды» в столбце «Путь». |
ошибка: org.openqa.selenium.SessionNotCreatedException: не удалось создать новый сеанс. | Вам необходимо установить правильный путь к приложению и перезапустить Appium сервера. |
Как найти элемент DOM или XPath в мобильном приложении? | Используйте «UIAutomatorviewer», чтобы найти элемент DOM для Android Приложение. |