appium tutorial testing android
Как да инсталирате и настроите Appium на Windows с първа програма за стартиране на Appium:
Appium е с отворен код инструмент за автоматизация на тестове използвани за тестване на мобилни приложения . Позволява на потребителите да тестват различни видове мобилни приложения (като Native, Hybrid и Mobile Web), използвайки стандартна библиотека WebDriver.
Има три типа мобилни приложения:
- Местен: Родни приложения, създадени с помощта на SDK за iOS, Android или Windows. Те са специфични за платформата. Те са създадени за работа на платформа и / или устройство.
- Хибрид: Хибридните приложения са уеб приложения, разработени с помощта на HTML, CSS и обвивка на собствено приложение върху UIWebView за iOS и „webview“ за приложения за Android.
- Мобилни уеб приложения: Мобилните уеб приложения са приложенията, достъпни с помощта на мобилни браузъри.
Списък с уроци в тази серия Appium
Урок # 1: Урок за Appium за начинаещи (Този урок)
Урок # 2: Въведение в Appium: Какво представлява Appium и неговата архитектура
Урок № 3: Изтеглете, инсталирайте и настройте Appium за Windows
Урок № 4: Конфигуриране на мобилно устройство със система в Appium
Урок № 5: Автоматизирайте собственото приложение на устройство с Android с помощта на Appium
Урок # 6: Как да автоматизирате уеб приложението в браузъра Chrome в устройство с Android
Какво ще научите:
- Защо Appium е популярен инструмент за автоматизиране на мобилни приложения?
- Настройка на инструмента Appium в Windows
- Настройте Appium с Eclipse IDE
- Ограничения на по-ранни епохи
- Предизвикателства пред работата с Appium
- Заключение
Защо Appium е популярен инструмент за автоматизиране на мобилни приложения?
Appium е „инструмент за различни платформи“, т.е. позволява ви да пишете тестове на множество платформи (iOS, Android, Windows), като използвате едни и същи API. Използвайки апиум , също така провеждате автоматизирани тестове на реални устройства като таблети, мобилни телефони и т.н.
Това е най-много широко използван инструмент за регресионно тестване на мобилни приложения на мобилни телефони и таблети. Appium улеснява тестването за регресия на мобилни приложения; особено за големи мобилни приложения, които се актуализират често с нови функции и функционалности.
Настройка на инструмента Appium в Windows
Предпоставки: Това е кратък списък на софтуера и хардуера, необходими за автоматизиране на тестване на мобилно приложение с помощта на Appium:
- Вашият компютър трябва да има инсталиран JDK, Appium Server, Eclipse, Android SDK
- Apk: Мобилното приложение ще бъде автоматизирано в нашия случай ContactManager.apk
- Устройство за тестване: В този случай Moto G
- Буркани: Java-клиентски буркани и Selenium Jars.
- USB драйвер за устройство за тестване: В този случай Moto G
Етап 1: Инсталирайте Java Development Kit ( JDK )
Стъпка 2: Настройте Java Път на променливата среда
Стъпка # 3: Изтеглете и инсталирайте Android SDK тук и актуализирайте API
За да актуализирате API, Отворете Eclipse -> Щракнете върху Window в менюто Eclipse и -> Изберете Android SDK manager
Актуализирайте API, както е показано на екрана по-долу:
Стъпка # 4: Сега трябва да инсталираме Appium за Windows. Отивам тук и изтеглете Appium за Windows.
Стъпка # 5: I nstall Node JS от тук: Изтегляне на възел JS
Стъпка # 6: Нагласи ANDROID_HOME пътека, както и JAVA_HOME път
Посочете пътя за инструментите и платформата-инструмент, налични в Android SDK пътя.
Тези папки ще присъстват в adt-bundle-windows-x86_64-20140702 sdk
Сега трябва да актуализираме променливата Environment (вижте снимката на екрана)
(Забележка:Кликнете върху всяко изображение за увеличен изглед)
Актуализирайте пътя с инструменти и инструменти на платформата (папка в Android SDK).
Записът в Path ще изглежда по-долу:
C: Program Files nodejs ;% ANDROID_HOME% tools;% ANDROID_HOME% platform-tools
Стъпка # 7: Достъп до adb
Натиснете комбинация от клавиши Win + R
Тип CMD . Сега в CMD тип „ adb ’. adb ще бъде достъпен
Подготовка на мобилно устройство за автоматизация с Appium
Свържете вашето мобилно устройство за тестване чрез USB към компютър. Активирайте режима за програмисти на мобилен телефон, преди да автоматизирате приложението.
Стъпки за активиране на режим / опции за програмисти на телефон или таблет с Android:
1) Отворете „Настройки“, докоснете „Информация“, докоснете „Информация за софтуера“, докоснете „Още“.
две) Докоснете „Номер на компилация“ 7 пъти, за да активирате опциите за програмисти.
3) Върнете се в Настройки и се уверете, че е налице настройката „Опции за програмисти“.
4) Докоснете Опции за разработчици и включете опцията USB отстраняване на грешки от менюто на следващия екран.
За повече помощ следвайте това връзка .
5) Изтеглете и инсталирайте USB драйвери за мобилното устройство за тестване на компютър.
6) В adb терминал тип „adb устройства“
C: Потребители NEERAJ> устройства adb
Приложен списък с устройства
Устройство TA93305G0L
Това ще покаже списъка с устройства, свързани към системата. Ще използваме App Contact Manager.apk като примерно приложение за автоматизация. Изтеглете и инсталирайте Свържете се с Manager.apk на устройството.
Стартиране на автоматизиране на приложението за Android с помощта на Appium
Сега стартирайте appium.exe на компютър.
Appium трябва да работи и да предаде следните параметри и име на устройството в настройките на Android.
Забележка: Не променяйте номера на порта или нещо в иконата за обща настройка. Когато Appium Server стартира, адресът на сървъра, както и адресът на порта, ще бъдат зададени по подразбиране. Адресът на порта ще бъде 4723 по подразбиране
В настройките на Android потребителят трябва да зададе пътя на APK, където се намира APK, да провери пътя на приложението, да пакетира и да стартира дейност.
- Свържете вашия Android телефон с компютър и включете USB режим за отстраняване на грешки.
- Отворете командния ред.
- Въведете команда adb logcat .
- Отворете приложението на вашия Android телефон. Незабавно натиснете CTRL + C в командния ред
com.example.android.contactmanager е името на пакета и com.example.android.contactmanager.ContactManager е името на активността на приложението Contact Manager.
В горната екранна снимка сме попълнили цялата необходима информация в пакета Appium, т.е. стартиране, име на мобилно устройство.
Как да намерите елемента с помощта на UIAutomatorViewer?
1) За да автоматизираме приложението първо, ще трябва да намерим елементите на приложението, с които ще трябва да взаимодействаме
за това ще използваме UIAutomatorViewer
две) Свържете устройството, в което е инсталирано приложението, към компютър
3) Отидете до терминала.
Тип ‘Adb устройства’
C: Потребители NEERAJ> устройства adb
Приложен списък с устройства
Устройство TA93305G0L
Това ще покаже списъка с устройства, свързани към вашия компютър.
4) Отворете приложението, което искате да автоматизирате в мобилно устройство.
5) Отворете UIAutomatorViewer и отидете по следния път
adt-bundle-windows-x86_64-20140702 sdk tools
6) Затова се уверете, че вашето приложение е стартирано и UIAutomaterViewer стартира кликнете върху екранна снимка на устройството
7) Тази опция ще направи екранната снимка на приложението с цялата подробна информация за всички елементи, видими в приложението.
Щракнете върху бутона Добавяне на контакт за нашия тестов сценарий
безплатно изтегляне на регистър за Windows 10
От горната екранна снимка можем да използваме локатор By.name („Добавяне на контакт“)
От горната екранна снимка можем да вземем By.className (“android.widget.EditText”)) като наш локатор за име на контакт
By.name („Запазване“) може да се използва като наш локатор за бутона за запазване
Първа програма за автоматизиране на приложение на Appium
Изпълнете скрипта по-долу, приложението Contact Manager ще бъде стартирано на реалното устройство и всички регистрационни файлове ще бъдат показани в конзолата на Appium, показващи всички действия, извикани от горния скрипт.
importjava.io.File; importjava.net.MalformedURLException; import java.net.URL; importjava.util.List; importorg.openqa.selenium.By; importorg.openqa.selenium.WebDriver; importorg.openqa.selenium.WebElement; importorg.openqa.selenium.remote.CapabilityType; importorg.openqa.selenium.remote.DesiredCapabilities; importorg.openqa.selenium.remote.RemoteWebDriver; importorg.testng.annotations.*; public class appium { WebDriver driver; @BeforeClass public void setUp() throws Exception { //location of the app File app = new File('C:\Users\NEERAJ\Downloads', 'ContactManager.apk'); //To create an object of Desired Capabilities DesiredCapabilities capability = new DesiredCapabilities(); //OS Name capability.setCapability('device','Android'); capability.setCapability(CapabilityType.BROWSER_NAME, ''); //Mobile OS version. In My case its running on Android 4.2 capability.setCapability(CapabilityType.VERSION, '4.2'); capability.setCapability('app', app.getAbsolutePath()); //To Setup the device name capability.setCapability('deviceName','Moto G'); capability.setCapability('platformName','Android'); //set the package name of the app capability.setCapability('app-package', 'com.example.android.contactmanager-1'); //set the Launcher activity name of the app capability.setCapability('app-activity', '.ContactManager'); //driver object with new Url and Capabilities driver = new RemoteWebDriver(new URL('http://127.0.0.1:4723/wd/hub'), capability); } @Test public void testApp() throws MalformedURLException{ System.out.println('App launched'); // locate Add Contact button and click it WebElementaddContactButton = driver.findElement(By.name('Add Contact')); addContactButton.click(); //locate input fields and type name and email for a new contact and save it ListtextFields = driver.findElements(By.className('android.widget.EditText')); textFields.get(0).sendKeys('Neeraj Test'); textFields.get(1).sendKeys('9999999999'); textFields.get(2).sendKeys('testemail@domain.com'); driver.findElement(By.name('Save')).click(); //insert assertions here } }
Настройте Appium с Eclipse IDE
Софтуер, необходим за Appium :
- JDK, Appium Server, Eclipse, Android SDK
- Буркани: java-клиент буркани и селен буркани.
- Apk: Приложението да бъде автоматизирано
- Реално устройство: В този случай SAMSUNG Note3
- USB драйвер за Real Device: В този случай SAMSUNG Kies
Етап 1: Инсталирайте Комплект за разработка на Java (JDK)
Стъпка 2: Настройвам Път на променливата среда на Java
Отидете до терминала и напишете:
Отворете .bash_profile
Задайте пътя на ANDROID_HOME, както и пътя на JAVA_HOME
Стъпка 3: Инсталирайте Android SDK / ADB на MAC
Трябва да инсталираме Инструменти, Екстри и съответните пакети на ниво API (в случая Android 4.4.2 API 19).
(Забележка:Кликнете върху всяко изображение за увеличен изглед)
Стъпка 4: Изтеглете и epochs инсталиране на сървър
Забележка 1: Няма нужда да задавате нищо в иконата за обща настройка. Когато Appium Server е инсталиран, адресът на сървъра, както и адресът на порта, ще бъдат зададени по подразбиране. Адресът на порта ще бъде 4723. Потребителят може да промени адреса на сървъра, ако е необходимо.
Бележка 2: В настройките на Android потребителят трябва да зададе пътя на APK, където се намира APK, да провери пътя на приложението, да пакетира и да стартира дейност.
Как да намерим .Apk Име на файловия пакет и име на активност на стартовия панел:
Има толкова много начини да разберете името на пакета и името на активността на стартиращото приложение. Тук терминалът се използва за получаване на име на активност на пакета и стартера.
Отидете до терминала и напишете:
aapt сваляне на значки
Натиснете „Enter“ за екрана по-долу:
Ако потребител посочи име на пакета в Appium Server, тогава Launcher Activity Name, изчакайте имената на Activity да се показват автоматично.
В този случай Името на Launcher Activity е:
' com.amazon.mShop.android.home.HomeActivity. '
Стъпки за активиране на режим / опции за програмисти на телефон или таблет с Android
Етап 1:Активирайте опциите за програмисти
1) Докоснете Главно меню икона.
две) Отидете на Настройки .
3) Превъртете надолу до „ Относно телефона ‘И го докоснете.
4) Превъртете надолу до дъното, натиснете „ Номер на компилация ’ Седем (7) пъти . ( Вашият номер на компилация може да варира ). След третото докосване потребителят може да види закачлив диалогов прозорец „ Вие сте разработчик ”. Продължавайте да докосвате, докато се покаже диалоговият прозорец.
5) Вече можете да забележите Опциите за програмисти на екрана си.
Стъпка 2:Включете USB отстраняване на грешки
1) Отидете на Опции за програмисти .
две ) Изберете USB отстраняване на грешки .
3) Може да показва Изскачащ прозорец съобщение и ако го направи, просто щракнете Добре .
Стъпка 3:Изтеглете и инсталирайте USB драйвер за съответстващо реално устройство. В този случай SAMSUNG Kies.
Как да намерите елемента с помощта на UIAutomatorViewer?
1) Първата стъпка преди намирането на който и да е елемент на устройството е да свържете устройството към компютъра.
Следвайте стъпките по-долу, за да проверите свързаността на устройството:
- Отидете на Терминал .
- Тип ' adb устройства '
Това ще покаже списъка с устройства, свързани към системата.
две) На истинското устройство отворете приложението, което трябва да бъде автоматизирано (Тук приложението на Amazon е автоматизирано)
3) Отидете в следната директория, за да я отворите UIAutomatorViewer :
Потребители -> Библиотека -> android -> sdk -> инструменти -> uiautomatorviewer.bat
БИВШИЯ: users / bikram.badatya / Library / Android / sdk / tool /
4) В UIAutomatorViewer кликнете върху Екранна снимка на устройството .
5) При щракване Екранна снимка на устройството, изображението на устройството заедно с подробната информация ще се покаже от лявата страна на прозореца на UIAutomator.
6) При щракване върху който и да е елемент на страницата, съответната информация за този елемент ще се покаже от дясната страна.
7) Щракнете върху Главно меню бутон за показване на всички свойства.
Тест Appium за стартиране на приложението Amazon
1) Стартирайте Appium Server.
2) Настройки на Android.
3) Общи настройки за адрес на сървър и адрес на порт:
4) Щракнете върху бутона за стартиране .
Кодов фрагмент за стартиране на приложението Amazon:
package com.AppiumDemo; //Library to create the path to APK import java.io.File; //Library used to verify if URL is malformed import java.net.MalformedURLException; //Library used to create URL for the Appium server import java.net.URL; import java.util.concurrent.TimeUnit; //Libraries for import selenium WebDriver import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; //Libraries for configuring Desired Capabilities import org.openqa.selenium.remote.DesiredCapabilities; //Library for import TestNG import org.testng.annotations.Test; //Libraries for import Appium Drivers import io.appium.java_client.MobileElement; import io.appium.java_client.android.AndroidDriver; public class LauchAmazon { private static AndroidDriver driver; //static WebDriver driver; @Test public void setup() throws MalformedURLException, InterruptedException{ // Path to File appDir = new File('//Users//bikram.badatya//Library//Android//sdk//platform-tools//'); //Path to to Amazon apk File> File app = new File(appDir, 'Amazon.apk'); //To create an object of Desired Capabilities DesiredCapabilities capabilities = new DesiredCapabilities(); //To set Command Timeout in appium server.Its optional you can set in appium Server itself. capabilities.setCapability('no',true); capabilities.setCapability('newCommandTimeout', 100000); // Name of the OS: Android, iOS or FirefoxOS capabilities.setCapability('platformName', 'Android'); //set the name of the connected device.you have to give same name in both server and the code capabilities.setCapability('deviceName','41001fd89730a000'); //Mobile OS version. My device is running Android 4.4.2 capabilities.setCapability('AndroidVersion','4.4.2'); //set the package name of the app capabilities.setCapability('appPackage', 'com.amazon.mShop.android'); //set the Launcher activity name of the app capabilities.setCapability ('appActivity','com.amazon.mShop.android.home.HomeActivity'); // Name of mobile web browser to automate. It should be an empty string, as we are automation an app. capabilities.setCapability('browserName', ''); //driver object with new Url and Capabilities driver = new AndroidDriverКогато горният скрипт бъде изпълнен, приложението Amazon ще бъде стартирано на реалното устройство и списък със съобщения ще бъде показан в конзолата на Appium.
Важни команди
1) За да убиете сървъра adb:
adb kill-server
две) За да стартирате adb сървър:
adb start-server
3) За да зададете и път на JAVA_Home ANDROID_Home Path
отворете .bash_profile
4) За да получите името на пакета и името на Android Launcher в apk (друг начин)
aapt dump badging .apk име
Бившия- aapt сваляне на значки
/users/bikram.badatya/Library/Android/sdk/platform-tools/Amazon.apk
5) За да инсталирате apk в реално устройство
adb install .apk име
6) За да деинсталирате apk в реално устройство
adb деинсталиране
Бившия - adb деинсталиране com.amazon.mShop.android
Ограничения на по-ранни епохи
- Той не поддържа Android API ниво по-малко от 17
- Тост съобщения не се поддържат
- Изпълнението на скриптове на платформата IOS е много бавно
- Поддръжката на жестове е ограничена
Предизвикателства пред работата с Appium
# 1) За да получите името на дейността на стартера, което е необходимо за стартиране на приложението, могат да се следват много методи, като трябва да се инсталира допълнителен apk с име „apkInfo“, да се напишат определени редове код и т.н. Но в този документ, следната команда се използва за получаване на името на дейността на стартера.
i.e. aapt dump badging .apk име
# две) По време на настройката в Android SDK мениджъра трябва да се съсредоточим върху следните пакети, които трябва да бъдат деинсталирани. В противен случай приложението няма да се стартира

# 3) Особено на MAC трябва да настроим Java_HomePath и Android HomePath в .bash_profile, така че да не се изисква настройване отново и отново.
# 4) Стартирането на приложението с помощта на емулатор отнема повече време в сравнение с реално устройство. Следователно се препоръчва използването на истинско устройство.
Заключение
С възникващите тенденции и по-голямото търсене на мобилни приложения, всички големи компании мигрират, за да насочат бизнеса си към мобилни приложения. По този начин, за да пуснат качествени мобилни приложения, автоматизираното тестване на мобилни приложения е последната тенденция в индустрията.
Поради своята простота и лекота на използване Appium е един от лидерите и най-широко използваните инструменти по целия свят за автоматизиране на тестване на мобилни приложения за iOS или Android.
За автора: Тази публикация е написана от член на екипа на STH Neeraj. Той е страстен изпитател на софтуер, който в момента работи като старши инженер по разработка на софтуер в теста и се радва на тестване на уеб и мобилни приложения.
Проверете тук, за да прочетете повече за Мобилна автоматизация с помощта на Appium Studio Tool.
Препоръчително четене
- Урок за тестване на мобилен потребителски интерфейс (GUI тестване на приложения за iOS и Android)
- ТОП 15 най-добри инструмента за мобилно тестване през 2021 г. за Android и iOS
- Услуги за бета тестване на мобилни приложения (Инструменти за бета тестване на iOS и Android)
- Защо мобилното тестване е трудно?
- Свързване на реални iOS и Android устройства от облак към Appium Studio
- Най-добри инструменти за тестване на софтуер 2021 г. (Инструменти за автоматизация на QA теста)
- Уроци за тестване на мобилни приложения (Пълно ръководство с над 30 урока)
- Как да получите бърза работа за мобилно тестване - Ръководство за мобилно тестване за кариера (част 1)