Что такое Аппиум?
APPIUM — это свободно распространяемая среда тестирования пользовательского интерфейса мобильного приложения с открытым исходным кодом. 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 Инспектор
- Подключите Android-эмулятор к Appium
- Тестовый набор APPIUM для приложения для Android (калькулятор)
- Ограничения при использовании APPIUM
- Распространенные ошибки и шаги по устранению неполадок в Appium
Как работает APPIUM?
- Appium — это HTTP-сервер, написанный на платформе Node.js, который управляет iOS и сеансом Android с использованием проводного протокола WebSON от JSON. Следовательно, перед инициализацией сервера Appium Node.js должен быть предварительно установлен в системе.
- Когда Appium загружается и устанавливается, на нашей машине устанавливается сервер, который предоставляет REST API.
- Он получает запрос на подключение и команду от клиента и выполняет эту команду на мобильных устройствах (Android / iOS).
- Он отвечает обратно HTTP-ответами. Опять же, чтобы выполнить этот запрос, он использует платформы автоматизации мобильных тестов для управления пользовательским интерфейсом приложений. Рамки, такие как: —
- Инструменты Apple для iOS (инструменты доступны только в 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 [ Ссылка ]
- Установите Selenium Server JAR [ Ссылка ]
- Клиентская библиотека Appium [ Ссылка ]
- Информация о приложении APK в Google Play [ Ссылка ]
- js (не требуется — всякий раз, когда установлен сервер Appium, он по умолчанию поставляется с «Node.exe» и NPM. Он включен в текущую версию Appium.)
- Установить Appium Desktop
Установите Appium Desktop:
Appium Studio — это приложение с открытым исходным кодом для установки Appium Server. Он поставляется в комплекте со всеми необходимыми условиями для установки и использования Appium Server. Он также имеет инспектора для получения основной информации о ваших приложениях. Он поставляется с регистратором для создания стандартного кода для автоматизации ваших мобильных приложений.
Шаг 1) Перейдите на http://appium.io/ и нажмите «Скачать Appium».
Шаг 2) Для Windows выберите исполняемый файл и загрузите. Файл размером около 162 МБ будет загружаться в зависимости от скорости вашего интернета.
Шаг 3) Нажмите на загруженный exe.
Шаг 4) На компьютере с Windows нет необходимости устанавливать Appium. Он запускается прямо из exe. Как только вы нажмете exe, вы увидите следующее изображение в течение нескольких минут.
Для Mac вам нужно установить DMG
Шаг 5) Далее вы увидите окно запуска сервера. Он заполняет параметры хоста и порта по умолчанию, которые вы можете изменить. В нем также упоминается используемая версия Appium.
Шаг 6) При нажатии кнопки «Пуск сервера» запускается новый сервер на указанном хосте и порте. Выводится журнал сервера.
Шаг 7) Нажмите Новое окно сеанса .
Шаг 8) Вы можете ввести желаемые возможности и начать сеанс.
APPIUM Инспектор
Как и в средстве записи и воспроизведения Selenium IDE, в Appium есть «Инспектор» для записи и воспроизведения. Он записывает и воспроизводит поведение собственного приложения, проверяя DOM и генерируя тестовые сценарии на любом желаемом языке. Однако в настоящее время отсутствует поддержка Appium Inspector для Microsoft Windows. В Windows он запускает сервер Appium, но не может проверить элементы. Однако средство просмотра UIAutomator можно использовать в качестве опции для проверки элементов.
Шаги, чтобы начать с Appium Inspector на компьютере Mac: —
Шаг 1) Загрузите и запустите сервер Appium с IP-адресом по умолчанию 0.0.0.0 и портом 4725.
- Выберите исходный файл или файлы .app из локального для тестирования.
- Установите флажок «Путь к приложению», чтобы активировать кнопку «Выбрать».
Шаг 2) Теперь нажмите кнопку «Выбрать», чтобы просмотреть и выбрать тестовый файл с локального диска.
Шаг 3) Запустите симулятор на компьютере Mac.
Шаг 4) Нажмите кнопку «Запустить» в правом верхнем углу, чтобы включить значок синего цвета. Снова, нажмите на этот синий цветной значок, он откроет инспектор Appium и симулятор с предварительно выбранным приложением.
Шаг 5) — Запуск вашего Appium Inspector покажет иерархию элементов в виде столбцов. Кроме того, пользователь может применять действия, используя такие кнопки, как «Касание», «Размах» и т. Д.
Шаг 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) Откройте командную строку и перейдите в каталог \ platform-tools \ вашего SDK Android (например, D: \ adt-bundle-windows-x86_64-20130514 \ sdk \ platform-tools).
Шаг 5) — Запустите команду adb devices. Вы можете увидеть подключенное устройство в списке в окне командной строки. (В CMD напишите ‘> adb devices’ — эта команда выведет список подключенных экземпляров эмулятора. Например: adb –s emulator-5554 install <Расположение файла .apk>)
Шаг 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 Server и Android Emulator из «AVD Manager» и нажмите «Выполнить» >> TestNG. Выше программа запустит «Calculator.app» на выбранном эмуляторе, и результат отобразится в консоли Eclipse с использованием среды TestNG.
Ограничения при использовании APPIUM
- Appium не поддерживает тестирование версии Android ниже 4.2
- Ограниченная поддержка тестирования гибридных приложений. Например: невозможно проверить действие переключения приложения с веб-приложения на нативное и наоборот.
- Нет поддержки для запуска Appium Inspector в Microsoft Windows.
Распространенные ошибки и шаги по устранению неполадок в Appium
| ошибка | Действия по устранению неполадок |
| 1. ошибка: — Требуются следующие желаемые возможности, но они не были предоставлены: имя устройства, имя платформы | 1. Добавьте нужные возможности: имя устройства, имя платформы в сценарии APPIUM. например :abilities.setCapability («имя_устройства», «Эмулятор»); abilities.setCapability («имя платформы», «Android»); |
| 2. ошибка: не удалось найти adb. Установите переменную среды ANDROID_HOME с помощью пути к корневому каталогу Android SDK. | 2. Возможно, вам нужно настроить путь к корневому каталогу SDK в системных переменных среды в столбце «Путь». |
| 3.error: org.openqa.selenium.SessionNotCreatedException: не удалось создать новый сеанс. | 3. Вам нужно установить правильный путь к приложению и перезапустить сервер Appium. |
| 4. Как найти элемент DOM или XPath в мобильном приложении? | 4. Используйте «UIAutomatorviewer», чтобы найти элемент DOM для приложения Android. |














