appium tutorial testing android
Cum se instalează și se configurează Appium pe Windows cu primul program pentru a începe un start pe Appium:
Appium este un open-source instrument de automatizare a testelor folosit pentru testarea aplicațiilor mobile . Permite utilizatorilor să testeze diferite tipuri de aplicații mobile (cum ar fi Native, Hybrid și Mobile Web) utilizând biblioteca WebDriver standard.
Există trei tipuri de aplicații mobile:
- Nativ: Aplicații native construite folosind SDK-uri iOS, Android sau Windows. Sunt specifice platformei. Sunt construite pentru a funcționa pe o platformă și / sau dispozitiv.
- Hibrid: Aplicațiile hibride sunt aplicații web dezvoltate folosind HTML, CSS și învelișul unei aplicații native deasupra UIWebView pentru iOS și „webview” pentru aplicațiile Android.
- Aplicații web mobile: Aplicațiile web mobile sunt aplicațiile accesate utilizând browserele mobile.
Lista tutorialelor din această serie Appium
Tutorial nr. 1: Tutorial Appium pentru începători (acest tutorial)
Tutorial nr. 2: Introducere în Appium: Ce este Appium și arhitectura sa
Tutorial # 3: Descărcați, instalați și configurați Appium pentru Windows
Tutorial # 4: Configurarea dispozitivului mobil cu sistemul în Appium
Tutorial # 5: Automatizați aplicația nativă pe dispozitivul Android utilizând Appium
Tutorial nr. 6: Cum se automatizează aplicația web pe browserul Chrome pe dispozitivul Android
Ce veți învăța:
- De ce este Appium un instrument popular pentru automatizarea aplicațiilor mobile?
- Configurarea instrumentului Appium pe Windows
- Configurați Appium cu Eclipse IDE
- Limitări ale epocilor anterioare
- Provocări cu care se confruntă în timp ce lucrați cu Appium
- Concluzie
De ce este Appium un instrument popular pentru automatizarea aplicațiilor mobile?
Appium este un „instrument cu mai multe platforme”, adică vă permite să scrieți teste pe mai multe platforme (iOS, Android, Windows), utilizând aceleași API-uri. Folosind appium , rulați și teste automate pe dispozitive reale, cum ar fi tablete, telefoane mobile etc.
Este cel mai mult instrument utilizat pe scară largă pentru testarea de regresie a aplicațiilor mobile pe telefoane mobile și tablete. Appium facilitează testarea regresiei aplicațiilor mobile; în special, pentru aplicațiile mobile mari care sunt actualizate frecvent cu funcții și funcționalități noi.
Configurarea instrumentului Appium pe Windows
Condiții preliminare: Aceasta este o listă scurtă de software și hardware necesare pentru automatizarea testării unei aplicații mobile folosind Appium:
- PC-ul dvs. ar trebui să aibă instalat JDK, Appium Server, Eclipse, Android SDK
- APK: Aplicația mobilă va fi automatizată în Case ContactManager.apk
- Dispozitiv de testare: În acest caz Moto G
- Borcane: Borcane Java-client și Borcane Selenium.
- Driver USB pentru dispozitivul de testare: În acest caz Moto G
Pasul 1: Instalați kitul de dezvoltare Java ( JDK )
Pasul 2: Configurați Java Calea variabilă a mediului
Pasul 3: Descărcați și instalați Android SDK Aici și actualizați API-urile
Pentru a actualiza API, Deschideți Eclipse -> Faceți clic pe Window în meniul Eclipse și -> Selectați Android SDK manager
Actualizați API-urile așa cum se arată în captura de ecran de mai jos:
Pasul 4: Acum trebuie să instalăm Appium pentru Windows. Merge Aici și descărcați Appium pentru Windows.
Pasul 5: Eu nstall Node JS de aici: Descărcare nod JS
Pasul 6: Seteaza ANDROID_HOME calea precum și JAVA_HOME cale
Specificați calea pentru instrumente și platformă-instrument prezentă în calea SDK Android.
Aceste foldere ar fi prezente în adt-bundle-windows-x86_64-20140702 sdk
Acum trebuie să actualizăm variabila Environment (Consultați mai jos Screenshot)
(Notă:Faceți clic pe orice imagine pentru vizualizare mărită)
Actualizați calea cu instrumente și instrumente de platformă (folder prezent în SDK Android).
Intrarea din Cale va arăta după cum urmează:
C: Program Files nodejs ;% ANDROID_HOME% tools;% ANDROID_HOME% platform-tools
Pasul 7: Accesați adb
Apăsați combinația de taste Win + R
Tip CMD . Acum în CMD tastați „ adb '. adb va fi accesibil
Pregătirea dispozitivului mobil pentru automatizare cu Appium
Conectați dispozitivul de testare mobilă prin USB la computer. Activați modul dezvoltator pe telefonul mobil înainte de a automatiza aplicația.
Pași pentru activarea modului de dezvoltare / Opțiuni pe telefonul sau tableta Android:
1) Deschideți Setări, atingeți opțiunea „Despre”, atingeți „Informații software”, atingeți „Mai multe”.
Două) Atingeți „Construiți numărul” de 7 ori pentru a activa opțiunile pentru dezvoltatori.
3) Reveniți la Setări și asigurați-vă că există setarea „Opțiuni pentru dezvoltatori”.
4) Apăsați pe Opțiuni pentru dezvoltatori și activați opțiunea USB Debugging din meniul de pe ecranul următor.
Pentru mai mult ajutor, urmați acest lucru legătură .
5) Descărcați și instalați drivere USB pentru dispozitivul de testare mobilă pe computer.
6) În terminalul adb, tastați „dispozitive adb”
C: Users NEERAJ> dispozitive adb
Lista dispozitivelor atașate
Dispozitiv TA93305G0L
Aceasta va afișa lista dispozitivelor conectate la sistem. Vom folosi App Contact Manager.apk ca un exemplu de aplicație pentru automatizare. descarca si instaleaza Contactați Manager.apk pe dispozitiv.
Începe automatizarea aplicației Android utilizând Appium
Acum rulează appium.exe pe computer.
Appium trebuie să ruleze și să treacă următorii parametri și numele dispozitivului în setările Android.
Notă: Nu modificați numărul portului sau nimic din pictograma de setare generală. Când pornește Appium Server, adresa serverului, precum și adresa portului, vor fi setate în mod implicit. Adresa portului va fi implicit 4723
În Setarea Android, utilizatorul trebuie să seteze calea APK în care se află APK-ul, Verificați calea aplicației, împachetați și lansați Activitatea.
- Conectați-vă telefonul Android la computer și activați modul de depanare USB.
- Deschideți promptul de comandă.
- Tastați comanda adb logcat .
- Deschideți aplicația pe telefonul dvs. Android. Apăsați imediat CTRL + C în promptul de comandă
com.example.android.contactmanager este numele pachetului și com.example.android.contactmanager.ContactManager este numele activității aplicației Contact Manager.
În captura de ecran de mai sus, am completat toate informațiile necesare în pachetul Appium i.e, activitate de lansare, numele dispozitivului mobil.
Cum să localizați elementul utilizând UIAutomatorViewer?
1) Pentru a automatiza aplicația în primul rând, va trebui să găsim elementele aplicației pe care va trebui să le interacționăm
pentru asta, vom folosi UIAutomatorViewer
Două) Conectați dispozitivul în care este instalată aplicația la computer
3) Mergeți la Terminal.
Tip „Dispozitive adb”
C: Users NEERAJ> dispozitive adb
Lista dispozitivelor atașate
Dispozitiv TA93305G0L
Aceasta va afișa lista dispozitivelor conectate la computer.
4) Deschideți aplicația pe care doriți să o automatizați în dispozitivul mobil.
5) Deschis UIAutomatorViewer și mergeți la calea următoare
adt-bundle-windows-x86_64-20140702 sdk tools
6) Deci, asigurându-vă că aplicația dvs. este lansată și UIAutomaterViewer este lansat faceți clic pe ecranul dispozitivului.
7) Această opțiune va face captura de ecran a aplicației cu toate informațiile detaliate ale tuturor elementelor vizibile în aplicație.
Faceți clic pe butonul Adăugați contact pentru scenariul nostru de testare
convertiți caracterul în întreg c ++
Din captura de ecran de mai sus, putem folosi localizatorul După.nume („Adăugați contact”)
Din captura de ecran de mai sus putem lua By.className („android.widget.EditText”)) ca localizator pentru numele de contact
După.nume („Salvați”) poate fi folosit ca localizator pentru butonul Salvare
Primul program pentru automatizarea unei aplicații pe Appium
Rulați scriptul de mai jos, aplicația Contact Manager va fi lansată pe dispozitivul real și toate jurnalele vor fi afișate în consola Appium care vă arată toate acțiunile invocate de scriptul de mai sus.
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 } }
Configurați Appium cu Eclipse IDE
Software necesar pentru Appium :
- JDK, Appium Server, Eclipse, Android SDK
- Borcane: borcane java-client și Borcane Selenium.
- APK: Aplicația va fi automatizată
- Dispozitiv real: În acest caz SAMSUNG Note3
- Driver USB pentru dispozitivul real: În acest caz SAMSUNG Kies
Pasul 1: Instalați fișierul Kit de dezvoltare Java (JDK)
Pasul 2: Înființat Calea variabilă a mediului Java
Mergeți la terminal și tastați:
Deschideți .bash_profile
Setați calea ANDROID_HOME, precum și calea JAVA_HOME
Pasul 3: Instalați Android SDK / ADB pe MAC
Trebuie să instalăm Instrumente, Extras și pachetele corespunzătoare la nivel API (în acest caz Android 4.4.2 API 19).
(Notă:Faceți clic pe orice imagine pentru vizualizare mărită)
Pasul 4: Descărcați și epoca instalează serverul
Nota 1: Nu este nevoie să setați nimic în pictograma de setare generală. Când este instalat Appium Server, adresa serverului, precum și adresa portului, vor fi setate în mod implicit. Adresa portului va fi 4723. Utilizatorul poate schimba adresa serverului, dacă este necesar.
Nota 2: În Setarea Android, utilizatorul trebuie să seteze calea APK în care se află APK-ul, Verificați calea aplicației, împachetați și lansați Activitatea.
Cum să găsiți numele pachetului de fișiere .Apk și numele activității lansatorului:
Există atât de multe modalități de a afla numele pachetului și numele activității lansatorului unei aplicații. Aici terminalul este folosit pentru a obține numele pachetului și al activității lansatorului.
Mergeți la terminal și tastați:
aapt dump badging
Apăsați „Enter” pentru ecranul de mai jos:
Dacă un utilizator specifică numele pachetului în Appium Server, atunci Launcher Activity Name, așteptați ca numele activităților să fie afișate automat.
În acest caz, numele activității lansatorului este:
' com.amazon.mShop.android.home.HomeActivity. ”
Pași pentru activarea modului de dezvoltare / Opțiuni pe telefonul sau tableta Android
Pasul 1:Activați Opțiunile pentru dezvoltatori
1) Apăsați pe Meniu principal pictogramă.
Două) Mergi la Setări .
3) Derulați în jos la „ Despre telefon ‘Și atingeți-l.
4) Derulați în jos, atingeți „ Număr de construcție ' De șapte (7) ori . ( Numărul dvs. de construcție poate varia ). După a treia atingere, utilizatorul poate vedea un dialog jucăuș „ Sunteți dezvoltator ”. Continuați să atingeți până când este afișat dialogul.
5) Puteți observa opțiunile dezvoltatorului pe ecran acum.
Pasul 2:Activați Depanarea USB
1) Mergi la Opțiuni pentru dezvoltatori .
Două ) Selectați Depanare USB .
3) Poate afișa Pop-up mesaj și, dacă o face, pur și simplu clic Bine .
Pasul 3:Descărcați și instalați driverul USB pentru dispozitivul real corespunzător. În acest caz SAMSUNG Kies.
Cum să localizați elementul utilizând UIAutomatorViewer?
1) Primul pas înainte de localizarea oricărui element pe dispozitiv este conectarea dispozitivului la computer.
Urmați pașii de mai jos pentru a verifica conectivitatea dispozitivului:
- Mergi la Terminal .
- Tip ' dispozitive adb '
Aceasta va afișa lista dispozitivelor conectate la sistem.
Două) Pe dispozitivul real, deschideți aplicația care trebuie automatizată (Aici aplicația Amazon este automatizată)
3) Accesați următorul director pentru a deschide UIAutomatorViewer :
Utilizatori -> Bibliotecă -> Android -> sdk -> instrumente -> uiautomatorviewer.bat
FOST: users / bikram.badatya / Library / Android / sdk / tool /
4) În UIAutomatorViewer, faceți clic pe Captură de ecran a dispozitivului .
5) La clic Captură de ecran a dispozitivului, imaginea dispozitivului împreună cu informațiile detaliate vor fi afișate în partea stângă a ferestrei UIAutomator.
6) Dacă faceți clic pe orice element din pagină, informațiile relevante despre acel element vor fi afișate în partea dreaptă.
7) Faceți clic pe Meniu principal pentru a afișa toate proprietățile.
Test Appium pentru lansarea aplicației Amazon
1) Lansați Appium Server.
2) Setări Android.
3) Setări generale pentru adresa serverului și adresa portului:
4) Faceți clic pe butonul de lansare .
Fragment de cod pentru lansarea aplicației 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 AndroidDriverCând scriptul de mai sus este executat, aplicația Amazon va fi lansată pe dispozitivul real și o listă de mesaje va fi afișată în consola Appium.
Comenzi importante
1) Pentru a ucide serverul adb:
adb kill-server
Două) Pentru a porni serverul adb:
adb start-server
3) Pentru a seta JAVA_Home Path și ANDROID_Home Path
deschide .bash_profile
4) Pentru a obține numele pachetului și numele lansatorului Android în apk (alt mod)
aapt dump badging .nume apk
Fost- aapt dump badging
/users/bikram.badatya/Library/Android/sdk/platform-tools/Amazon.apk
5) Pentru a instala apk pe un dispozitiv real
adb instala numele .apk
6) Pentru a dezinstala apk pe dispozitivul real
dezinstalare adb
Fost - adb dezinstalați com.amazon.mShop.android
Limitări ale epocilor anterioare
- Nu acceptă nivelul API Android mai mic de 17
- Mesajele Toast nu sunt acceptate
- Executarea scriptului pe platforma IOS este foarte lentă
- Suportul pentru gesturi este limitat
Provocări cu care se confruntă în timp ce lucrați cu Appium
# 1) Pentru a obține numele activității lansatorului, care este necesar pentru lansarea aplicației, pot fi urmate multe metode, de exemplu, trebuie instalat un apk suplimentar numit „apkInfo”, trebuie scrise anumite linii de cod etc. Dar, în acest document, următoarea comandă este utilizată pentru a obține numele activității lansatorului.
adică aapt dump badging .nume apk
#Două) În timpul configurării în Android SDK manager, trebuie să ne concentrăm pe următoarele pachete care trebuie dezinstalate. În caz contrar, aplicația nu se va lansa

# 3) Mai ales pe MAC, trebuie să configurăm Java_HomePath și Android HomePath în .bash_profile, astfel încât să nu fie necesară configurarea din nou și din nou.
# 4) Lansarea aplicației folosind un emulator consumă mai mult timp comparativ cu un dispozitiv real. Prin urmare, se recomandă utilizarea unui dispozitiv real.
Concluzie
Odată cu tendințele emergente și cu o cerere mai mare de aplicații mobile, toate companiile majore migrează pentru a-și face afacerea cu aplicațiile mobile. Astfel, pentru a lansa aplicații mobile de calitate, testarea automatizată a aplicațiilor mobile este cea mai recentă tendință din industrie.
Appium, datorită simplității și ușurinței sale de utilizare, este unul dintre liderii și cele mai utilizate instrumente din întreaga lume pentru testarea automatizată a aplicațiilor mobile pentru iOS sau Android.
Despre autor: Această postare este scrisă de Neeraj, membru al echipei STH. El este un tester pasionat de software care lucrează în prezent ca inginer senior în dezvoltare de software în test și îi place să testeze aplicații web și mobile.
Verificați aici pentru a citi mai multe despre Automatizare mobilă folosind instrumentul Appium Studio.
Lectură recomandată
- Tutorial pentru testarea interfeței mobile (testarea GUI a aplicațiilor iOS și Android)
- TOP 15 Cele mai bune instrumente de testare mobilă în 2021 pentru Android și iOS
- Servicii de testare beta pentru aplicații mobile (instrumente de testare beta pentru iOS și Android)
- De ce testarea pe mobil este dificilă?
- Conectarea dispozitivelor reale iOS și Android de la Cloud la Appium Studio
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Tutoriale pentru testarea aplicațiilor mobile (un ghid complet cu peste 30 de tutoriale)
- Cum să obțineți rapid un job de testare pe mobil - Ghid de carieră pentru testarea pe mobil (partea 1)