appium tutorial testing android
Kako instalirati i postaviti Appium na Windows s prvim programom za pokretanje Appiuma:
Appium je open source alat za automatizaciju ispitivanja koristi za testiranje mobilnih aplikacija . Omogućuje korisnicima testiranje različitih vrsta mobilnih aplikacija (kao što su izvorni, hibridni i mobilni web) pomoću standardne biblioteke WebDriver.
Postoje tri vrste mobilnih aplikacija:
- Izvorno: Izvorne aplikacije izrađene pomoću SDK-a za iOS, Android ili Windows. Oni su specifični za platformu. Izgrađeni su za rad na platformi i / ili uređaju.
- Hibrid: Hibridne aplikacije su web aplikacije razvijene pomoću HTML-a, CSS-a i omota izvorne aplikacije povrh UIWebView za iOS i 'webview' za Android aplikacije.
- Mobilne web aplikacije: Mobilne web aplikacije su one kojima se pristupa putem mobilnih preglednika.
Popis tutorijala u ovoj seriji Appium
Vodič br. 1: Appium Tutorial za početnike (Ovaj Tutorial)
Vodič br. 2: Uvod u Appium: Što je Appium i njegova arhitektura
Vodič br. 3: Preuzmite, instalirajte i postavite Appium za Windows
Vodič br. 4: Konfiguriranje mobilnog uređaja sa sustavom u Appiumu
Vodič br. 5: Automatizirajte izvornu aplikaciju na Android uređaju pomoću Appiuma
Vodič br. 6: Kako automatizirati web aplikaciju u pregledniku Chrome na Android uređaju
Što ćete naučiti:
- Zašto je Appium popularan alat za automatizaciju mobilnih aplikacija?
- Postavljanje alata Appium na sustavu Windows
- Postavite Appium s Eclipse IDE-om
- Ograničenja ranijih epoha
- Izazovi suočeni tijekom rada s Appiumom
- Zaključak
Zašto je Appium popularan alat za automatizaciju mobilnih aplikacija?
Appium je 'alat za više platformi', tj. Omogućuje vam pisanje testova na više platformi (iOS, Android, Windows), koristeći iste API-je. Koristeći apijem , također pokrećete automatizirane testove na stvarnim uređajima poput tableta, mobilnih telefona itd.
To je najviše široko korišteni alat za regresijsko testiranje mobilnih aplikacija na mobilnim telefonima i tabletima. Appium olakšava testiranje regresije mobilnih aplikacija; posebno za velike mobilne aplikacije koje se često ažuriraju novim značajkama i funkcionalnostima.
Postavljanje alata Appium na sustavu Windows
Preduvjeti: Ovo je uži izbor softvera i hardvera potrebnih za automatizaciju testiranja mobilne aplikacije pomoću Appiuma:
- Na vašem računalu trebaju biti instalirani JDK, Appium Server, Eclipse, Android SDK
- Apk: Mobilna aplikacija koja će biti automatizirana u našem slučaju ContactManager.apk
- Uređaj za ispitivanje: U ovom slučaju Moto G
- Staklenke: Java-klijent staklenke i Selenium staklenke.
- USB upravljački program za uređaj za testiranje: U ovom slučaju Moto G
Korak 1: Instalirajte Java Development Kit ( JDK )
Korak 2: Postavite Javu Put promjenljive okoline
3. korak: Preuzmite i instalirajte Android SDK ovdje i ažurirati API-je
Da biste ažurirali API, Otvorite Eclipse -> Kliknite prozor u izborniku Eclipse i -> Odaberite Android SDK manager
Ažurirajte API-je kako je prikazano na donjoj snimci zaslona:
Korak # 4: Sada moramo instalirati Appium za Windows. Ići ovdje i preuzmite Appium za Windows.
Korak # 5: I instalirajte Node JS odavde: Preuzimanje čvora JS
Korak # 6: Postavi ANDROID_HOME put kao i JAVA_HOME staza
Navedite put za alate i platforme-alate prisutne u Android SDK putu.
Te bi mape bile prisutne u adt-bundle-windows-x86_64-20140702 sdk
Sada moramo ažurirati varijablu Okoliš (pogledajte ispod snimke zaslona)
(Bilješka:Kliknite bilo koju sliku za uvećani prikaz)
Ažurirajte put pomoću alata i alata za platformu (mapa prisutna u Android SDK-u).
Unos u Putu izgledat će dolje:
C: Program Files nodejs ;% ANDROID_HOME% tools;% ANDROID_HOME% platform-tools
Korak # 7: Pristup adb
Pritisnite kombinaciju tipki Win + R
Tip CMD . Sada u CMD-u adb ’. adb će biti dostupan
Priprema mobilnog uređaja za automatizaciju s Appiumom
Povežite svoj uređaj za testiranje putem USB-a s računalom. Omogućite način za programere na mobilnom telefonu prije automatizacije aplikacije.
Koraci za omogućavanje načina / opcija za programere na Android telefonu ili tabletu:
1) Otvorite Postavke, dodirnite opciju 'O', dodirnite 'Informacije o softveru', dodirnite 'Više'.
2) Dodirnite 'Broj izrade' 7 puta da biste omogućili opcije za programere.
3) Vratite se na Postavke i provjerite postoji li postavka 'Opcije za programere'.
4) Dodirnite Opcije programera i na izborniku na sljedećem zaslonu uključite opciju USB ispravljanje pogrešaka.
Za dodatnu pomoć slijedite ovo veza .
5) Preuzmite i instalirajte USB upravljačke programe za uređaj za mobilno testiranje na računalo.
6) U adb terminalu tipa 'adb uređaji'
C: Korisnici NEERAJ> adb uređaji
Popis priključenih uređaja
Uređaj TA93305G0L
Ovo će prikazati popis uređaja povezanih sa sustavom. Koristit ćemo App Contact Manager.apk kao primjer aplikacije za automatizaciju. Preuzmite i instalirajte Kontaktirajte upravitelja.apk na uređaju.
Pokretanje automatizacije Android aplikacije pomoću Appiuma
Sada pokrenite appium.exe na računalu.
Appium mora biti pokrenut i u postavkama Androida mora proslijediti sljedeće parametre i Naziv uređaja.
Bilješka: Ne mijenjajte broj porta ili bilo što drugo u ikoni opće postavke. Kada se Appium Server pokrene, adresa poslužitelja, kao i adresa priključka, postavit će se prema zadanim postavkama. Adresa priključka prema zadanim postavkama bit će 4723
U postavkama Androida korisnik mora postaviti putanju APK-a na mjestu gdje se nalazi APK, provjeriti put aplikacije, pakirati i pokrenuti aktivnost.
- Povežite svoj android telefon s računalom i uključite USB način uklanjanja pogrešaka.
- Otvorite naredbeni redak.
- Upišite naredbu adb logcat .
- Otvorite aplikaciju na svom Android telefonu. Odmah pritisnite CTRL + C u naredbenom retku
com.example.android.contactmanager je naziv paketa i com.example.android.contactmanager.ContactManager naziv je aktivnosti aplikacije Contact Manager.
U gornji snimak zaslona unijeli smo sve potrebne informacije u paket Appium, tj. Pokretanje, naziv mobilnog uređaja.
Kako locirati element pomoću UIAutomatorViewer?
1) Da bismo prvo automatizirali aplikaciju, morat ćemo pronaći elemente aplikacije s kojima ćemo trebati komunicirati
za to ćemo upotrijebiti UIAutomatorViewer
2) Povežite uređaj na kojem je instalirana aplikacija s računalom
3) Idite do terminala.
Tip 'Adb uređaji'
C: Korisnici NEERAJ> adb uređaji
Popis priključenih uređaja
Uređaj TA93305G0L
Ovo će prikazati popis uređaja povezanih s vašim računalom.
4) Otvorite aplikaciju koju želite automatizirati na mobilnom uređaju.
5) Otvoren UIAutomatorViewer i idite na sljedeći put
adt-bundle-windows-x86_64-20140702 sdk tools
6) Pazite da vaša aplikacija bude pokrenuta i UIAutomaterViewer je pokrenut kliknite na snimak zaslona uređaja.
7) Ova će opcija snimiti snimak zaslona aplikacije sa svim detaljnim informacijama o svim elementima vidljivim u aplikaciji.
Kliknite gumb Dodaj kontakt za naš testni scenarij
kako dodati maven u pomrčinu
Iz gornjeg snimka zaslona možemo koristiti lokator By.name ('Dodaj kontakt')
S gornje slike zaslona možemo uzeti By.className (“android.widget.EditText”)) kao naš lokator za ime kontakta
By.name ('Spremi') može se koristiti kao naš lokator za gumb Spremi
Prvi program za automatizaciju aplikacije na Appiumu
Pokrenite donju skriptu, aplikacija Contact Manager pokrenut će se na stvarnom uređaju, a svi zapisnici će se prikazati na Appium konzoli pokazujući sve radnje na koje se poziva gornja skripta.
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 } }
Postavite Appium s Eclipse IDE-om
Softver potreban za Appium :
- JDK, Appium Server, Eclipse, Android SDK
- Staklenke: java-klijent staklenke i Selenium staklenke.
- Apk: Aplikacija za automatizaciju
- Pravi uređaj: U ovom slučaju SAMSUNG Note3
- USB upravljački program za pravi uređaj: U ovom slučaju SAMSUNG Kies
Korak 1: Instalirajte Java razvojni komplet (JDK)
Korak 2: Postaviti Put promjenljive okoline Java
Idite na terminal i upišite:
Otvorite .bash_profile
Postavite put ANDROID_HOME kao i JAVA_HOME put
Korak 3: Instalirajte Android SDK / ADB na MAC-u
Moramo instalirati Alate, dodatke i odgovarajuće pakete razine API-ja (u ovom slučaju Android 4.4.2 API 19).
(Bilješka:Kliknite bilo koju sliku za uvećani prikaz)
Korak 4: Preuzmite i epohe instalirati poslužitelj
Napomena 1: Nije potrebno postavljati ništa u ikoni općih postavki. Kada se instalira Appium Server, adresa poslužitelja, kao i adresa porta, bit će postavljene prema zadanim postavkama. Adresa porta bit će 4723. Korisnik može promijeniti adresu poslužitelja ako je potrebno.
Napomena 2: U postavkama Androida korisnik mora postaviti putanju APK-a na mjestu gdje se nalazi APK, provjeriti put aplikacije, pakirati i pokrenuti aktivnost.
Kako pronaći naziv paketa datoteka .Apk i naziv aktivnosti pokretača:
Postoji toliko mnogo načina kako saznati naziv paketa i naziv aktivnosti pokretača aplikacije. Ovdje se terminal koristi za dobivanje naziva aktivnosti paketa i pokretača.
Idite na terminal i upišite:
aapt značka za smeće
Pritisnite 'Enter' za donji zaslon:
Ako korisnik navede naziv paketa na Appium poslužitelju, a zatim ime aktivnosti pokretača, pričekajte da se imena aktivnosti prikažu automatski.
U ovom slučaju Naziv aktivnosti pokretača je:
' com.amazon.mShop.android.home.HomeActivity. '
Koraci za omogućavanje načina / opcija za programere na Android telefonu ili tabletu
Korak 1:Omogućite opcije za programere
1) Dodirnite Glavni izbornik ikona.
2) Ići Postavke .
3) Pomaknite se prema dolje do O telefonu ‘I dodirnite ga.
4) Pomaknite se prema dnu, dodirnite ‘ Izgradi broj' Sedam (7) puta . ( Broj vaše izrade može se razlikovati ). Nakon trećeg dodira korisnik može vidjeti razigrani dijaloški okvir ' Vi ste programer '. Tapkajte dok se ne prikaže dijaloški okvir.
5) Na svom zaslonu sada možete primijetiti Opcije za programere.
Korak 2:Uključi USB ispravljanje pogrešaka
1) Ići Mogućnosti programera .
dva ) Izaberi USB ispravljanje pogrešaka .
3) Može prikazati Iskočiti poruku, a ako se dogodi, jednostavno klik u redu .
3. korak:Preuzmite i instalirajte USB upravljački program za odgovarajući stvarni uređaj. U ovom slučaju SAMSUNG Kies.
Kako locirati element pomoću UIAutomatorViewer?
1) Prvi korak prije pronalaska bilo kojeg elementa na uređaju je povezivanje uređaja s računalom.
Slijedite korake u nastavku da biste provjerili povezanost uređaja:
- Ići Terminal .
- Upišite ' adb uređaji '
Ovo će prikazati popis uređaja povezanih sa sustavom.
2) Na stvarnom uređaju otvorite aplikaciju koja mora biti automatizirana (ovdje je aplikacija Amazon automatizirana)
3) Otvorite sljedeći direktorij UIAutomatorViewer :
Korisnici -> Knjižnica -> android -> sdk -> alata -> uiautomatorviewer.bat
PRIJAŠNJI: users / bikram.badatya / Library / Android / sdk / tool /
4) U UIAutomatorViewer kliknite na Snimak zaslona uređaja .
5) Nakon klika Snimak zaslona uređaja, slika uređaja zajedno s detaljnim informacijama prikazat će se na lijevoj strani prozora UIAutomatora.
6) Klikom na bilo koji element na stranici, relevantne informacije o tom elementu prikazat će se s desne strane.
7) Klikni na Glavni izbornik gumb za prikaz svih svojstava.
Appium test za pokretanje aplikacije Amazon
1) Pokrenite Appium Server.
2) Android postavke.
3) Opće postavke za adresu poslužitelja i adresu porta:
4) Kliknite gumb za pokretanje .
Isječak koda za pokretanje aplikacije 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 AndroidDriverKada se izvrši gornja skripta, Amazon aplikacija će se pokrenuti na stvarnom uređaju, a popis poruka prikazat će se na konzoli Appium.
Važne naredbe
1) Da biste ubili adb poslužitelj:
adb kill-server
2) Da biste pokrenuli adb poslužitelj:
adb start-server
3) Da biste postavili i JAVA_Home PUT ANDROID_Home Path
otvorite .bash_profile
4) Da biste dobili naziv paketa i ime pokretača android u apk (drugi način)
aapt dump badging .apk naziv
Prijašnji- aapt značka za smeće
/users/bikram.badatya/Library/Android/sdk/platform-tools/Amazon.apk
5) Da biste instalirali apk u stvarni uređaj
adb install .apk naziv
6) Da biste deinstalirali apk u stvarnom uređaju
adb deinstalirati
Prijašnji - adb deinstaliraj com.amazon.mShop.android
Ograničenja ranijih epoha
- Ne podržava Android API razinu manju od 17
- Poruke nazdravljanja nisu podržane
- Izvršenje skripti na IOS platformi vrlo je sporo
- Podrška za geste je ograničena
Izazovi suočeni tijekom rada s Appiumom
# 1) Da biste dobili naziv aktivnosti pokretača, koji je potreban za pokretanje aplikacije, mogu se slijediti mnoge metode poput dodatnog apk-a pod nazivom 'apkInfo', potrebno je napisati određene retke koda itd. Ali, u ovom dokumentu, sljedeća naredba koristi se za dobivanje naziva aktivnosti pokretača.
tj. aapt dump badging .apk naziv
#dva) Tijekom postavljanja u Android SDK upravitelju moramo se usredotočiti na sljedeće pakete koje moramo deinstalirati. Inače se aplikacija neće pokrenuti

# 3) Pogotovo na MAC-u moramo postaviti Java_HomePath i Android HomePath u .bash_profile tako da nije potrebno ponovno postavljanje.
# 4) Pokretanje aplikacije pomoću emulatora troši više vremena u usporedbi sa stvarnim uređajem. Stoga se preporučuje uporaba pravog uređaja.
Zaključak
S novim trendovima i većom potražnjom za mobilnim aplikacijama, sve velike tvrtke migriraju kako bi svoje poslovanje postavile na mobilne aplikacije. Stoga je za puštanje kvalitetnih mobilnih aplikacija najnoviji trend u industriji automatizirano testiranje mobilnih aplikacija.
Appium je zbog svoje jednostavnosti i jednostavnosti upotrebe jedan od vodećih i najčešće korištenih alata širom svijeta za automatizaciju testiranja mobilnih aplikacija za iOS ili Android.
O autoru: Ovaj post napisao je član STH tima Neeraj. Strastveni je ispitivač softvera koji trenutno radi kao viši inženjer za razvoj softvera u testiranju i uživa u testiranju web i mobilnih aplikacija.
Ovdje pročitajte više o tome Mobilna automatizacija pomoću alata Appium Studio.
Preporučena literatura
- Vodič za testiranje mobilnog korisničkog sučelja (GUI testiranje iOS i Android aplikacija)
- TOP 15 najboljih alata za mobilno testiranje 2021. za Android i iOS
- Usluge beta testiranja mobilne aplikacije (iOS i Android beta alati)
- Zašto je mobilno testiranje teško?
- Povezivanje stvarnih iOS i Android uređaja iz oblaka u Appium Studio
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Tutoriali za testiranje mobilnih aplikacija (cjelovit vodič s više od 30 vodiča)
- Kako brzo dobiti posao za mobilno testiranje - Vodič za karijeru za mobilno testiranje (1. dio)