Учебники

3) Введение в APPIUM

Что такое Аппиум?

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 — это 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

  1. Установите ANDROID SDK (Studio) [ Ссылка ] —
  2. Установите JDK (Java Development Kit) [ Ссылка ]
  3. Установить Eclipse [ Ссылка ]
  4. Установите TestNg для Eclipse [ Ссылка ]
  5. Установите Selenium Server JAR [ Ссылка ]
  6. Клиентская библиотека Appium [ Ссылка ]
  7. Информация о приложении APK в Google Play [ Ссылка ]
  8. js (не требуется — всякий раз, когда установлен сервер Appium, он по умолчанию поставляется с «Node.exe» и NPM. Он включен в текущую версию Appium.)
  9. Установить Appium Desktop

Установите Appium Desktop:

Appium Studio — это приложение с открытым исходным кодом для установки Appium Server. Он поставляется в комплекте со всеми необходимыми условиями для установки и использования Appium Server. Он также имеет инспектора для получения основной информации о ваших приложениях. Он поставляется с регистратором для создания стандартного кода для автоматизации ваших мобильных приложений.

Шаг 1) Перейдите на http://appium.io/ и нажмите «Скачать Appium».

APPIUM Учебник для начинающих

Шаг 2) Для Windows выберите исполняемый файл и загрузите. Файл размером около 162 МБ будет загружаться в зависимости от скорости вашего интернета.

APPIUM Учебник для начинающих

Шаг 3) Нажмите на загруженный exe.

APPIUM Учебник для начинающих

Шаг 4) На компьютере с Windows нет необходимости устанавливать Appium. Он запускается прямо из exe. Как только вы нажмете exe, вы увидите следующее изображение в течение нескольких минут.

APPIUM Учебник для начинающих

Для Mac вам нужно установить DMG

Шаг 5) Далее вы увидите окно запуска сервера. Он заполняет параметры хоста и порта по умолчанию, которые вы можете изменить. В нем также упоминается используемая версия Appium.

APPIUM Учебник для начинающих

Шаг 6) При нажатии кнопки «Пуск сервера» запускается новый сервер на указанном хосте и порте. Выводится журнал сервера.

APPIUM Учебник для начинающих

Шаг 7) Нажмите Новое окно сеанса .

APPIUM Учебник для начинающих

Шаг 8) Вы можете ввести желаемые возможности и начать сеанс.

APPIUM Учебник для начинающих

APPIUM Инспектор

Как и в средстве записи и воспроизведения Selenium IDE, в Appium есть «Инспектор» для записи и воспроизведения. Он записывает и воспроизводит поведение собственного приложения, проверяя DOM и генерируя тестовые сценарии на любом желаемом языке. Однако в настоящее время отсутствует поддержка Appium Inspector для Microsoft Windows. В Windows он запускает сервер Appium, но не может проверить элементы. Однако средство просмотра UIAutomator можно использовать в качестве опции для проверки элементов.

Шаги, чтобы начать с Appium Inspector на компьютере Mac: —

Шаг 1) Загрузите и запустите сервер Appium с IP-адресом по умолчанию 0.0.0.0 и портом 4725.

  1. Выберите исходный файл или файлы .app из локального для тестирования.
  2. Установите флажок «Путь к приложению», чтобы активировать кнопку «Выбрать».

Шаг 2) Теперь нажмите кнопку «Выбрать», чтобы просмотреть и выбрать тестовый файл с локального диска.

APPIUM Учебник для начинающих

Шаг 3) Запустите симулятор на компьютере Mac.

Шаг 4) Нажмите кнопку «Запустить» в правом верхнем углу, чтобы включить значок синего цвета. Снова, нажмите на этот синий цветной значок, он откроет инспектор Appium и симулятор с предварительно выбранным приложением.

APPIUM Учебник для начинающих

Шаг 5) — Запуск вашего Appium Inspector покажет иерархию элементов в виде столбцов. Кроме того, пользователь может применять действия, используя такие кнопки, как «Касание», «Размах» и т. Д.

APPIUM Учебник для начинающих

Шаг 6) Нажмите кнопку «Стоп», чтобы остановить запись.

Подключите Android-эмулятор к Appium

Шаг 1) Установите Android SDK в вашей системе.

Перейдите в Панель управления >> Система и безопасность >> Система и на левой панели нажмите «Расширенные настройки системы». Во всплывающем окне «Свойства системы» нажмите вкладку «Дополнительно», а затем нажмите кнопку «Переменные среды».

APPIUM Учебник для начинающих

Шаг 2) Теперь из всплывающего окна «Переменные среды» дважды щелкните «Путь» и установите переменную ANDROID_HOME, которая указывает на каталог SDK. В пути добавьте полный путь к папке SDK.

например —

C:\User\ABC\Desktop\adt-bundled-windows-x86_64-20140321\sdk

APPIUM Учебник для начинающих

Шаг 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>)

APPIUM Учебник для начинающих

Шаг 6) — Запустите команду adb start-server. Запустится сервер ADB, который будет использоваться Appium для отправки команд на ваше устройство Android.

Шаг 7) Теперь перейдите в каталог Appium в вашей системе и запустите Appium, щелкнув файл Appium.exe.

Шаг 8) Не меняйте IP-адрес или номер порта и нажмите кнопку «Запустить». Ваша консоль Appium начинается с 127.0.0.1:4723, как показано ниже.

APPIUM Учебник для начинающих

Шаг 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

  1. Appium не поддерживает тестирование версии Android ниже 4.2
  2. Ограниченная поддержка тестирования гибридных приложений. Например: невозможно проверить действие переключения приложения с веб-приложения на нативное и наоборот.
  3. Нет поддержки для запуска 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.