APPIUM Підручник для Android & Тестування мобільних додатків iOS
Що таке 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-сервер», написаний за допомогою a Node.js платформи та керує iOS і an 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 (Studio)[посилання]-
- Встановити 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) Після натискання кнопки «Запустити сервер» запускається новий сервер на вказаному хості та порту. Показано вихід журналу сервера.
Крок 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 Інспектор покаже ієрархію елементів у структурі стовпців. Крім того, користувач може застосовувати дії за допомогою кнопок, таких як «Торкнись», «Проведіть пальцем» тощо.
Крок 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 клацнувши an Appiumфайл .exe.
Крок 8) Не змінюйте IP-адресу чи номер порту та натисніть кнопку «Запустити». ваш Appium консоль починається з 127.0.0.1:4723, як показано нижче.
Крок 9) Натисніть кнопку «Пуск», Appium сервер почав працювати у вашій системі.
Тестовий приклад APPIUM для Native 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 консоль за допомогою a TestNG рамки.
Обмеження використання APPIUM
- Appium не підтримує тестування Android Версія нижче 4.2
- Обмежена підтримка тестування гібридних програм. наприклад: неможливо перевірити перемикання програми з веб-програми на нативну та навпаки.
- Немає підтримки для запуску Appium Інспектор на Microsoft Windows.
Поширені помилки та дії з усунення несправностей у Appium
помилка | Етапи усунення несправностей |
---|---|
error:- Потрібні, але не надані такі бажані можливості: назва пристрою, назва платформи | Додайте бажані можливості: назву пристрою, назву платформи в сценарій APPIUM. наприклад:capabilities.setCapability (“deviceName”, “Emulator”); capabilities.setCapability (“назва платформи”,”Android»); |
помилка: не вдалося знайти adb. Установіть змінну середовища ANDROID_HOME за допомогою Android Шлях кореневого каталогу SDK. | Можливо, вам потрібно налаштувати шлях до кореневого каталогу SDK у системних «Змінних середовища» у стовпці «Шлях». |
error:org.openqa.selenium.SessionNotCreatedException: не вдалося створити новий сеанс. | Вам потрібно встановити правильний шлях програми та перезапустити її Appium сервера. |
Як знайти елемент DOM або XPath в мобільному додатку? | Використовуйте «UIAutomatorviewer», щоб знайти елемент DOM для Android Додаток. |