uiautomatorviewer tutorial
Ovaj vodič objašnjava kako preuzeti, instalirati i konfigurirati UIAutomator i kako koristiti UIAutomatorViewer za pregled elementa na Android aplikaciji:
Google je osigurao vlastite alate za automatizaciju Android testova, a UIAutomatorviewer je jedan od njih. Ako imate ideju o selenu, tada će vam biti lako razumjeti UIAutomator.
Ovaj će vam vodič dati detaljno objašnjenje UIAutomatora zajedno s njegovom instalacijom, konfiguracijom, komponentama, naredbama, uzorkom programa za testiranje i nekim od često postavljanih pitanja.
Istražimo !!
kako ukloniti element iz niza u javi
Što ćete naučiti:
Što je UIAutomatorViewer?
UIAutomatorViewer dolazi kao dio Android SDK upravitelja i to je alat za GUI inspektora korisničkog sučelja (grafičko korisničko sučelje) koji nam pomaže da pregledamo elemente korisničkog sučelja Android aplikacije.
Pregled aplikacije važan je jer su nam potrebni lokatori poput ID-a resursa, klase, teksta Android komponente aplikacije za automatizaciju aplikacije.
UIAutomatorViewer napravit će XML snimku zaslona trenutnog zaslona. Klikom na bilo koji element na zaslonu možemo upoznati klasu koja se koristi za predstavljanje, element na zaslonu zajedno sa svim svojstvima navedenim na desnoj strani alata.
Hijerarhija objekata je redoslijed objekata u kojem su definirani. Na primjer ,razred je dijete drugog razreda. Postavlja se u gornji desni dio alata.
Koristeći UIAutomator možete pisati testove automatizacije za Android aplikacije. Ova ispitivanja provest će se na sloju korisničkog sučelja aplikacije. Možete simulirati svaku radnju koju ispitivač radi ručno, na primjer , potvrđivanje prijave.
Montaža
Ovaj alat možete instalirati na dva načina.
# 1) Android Studio
Ako često radite s testiranjem / razvojem Android aplikacija, tada možete instalirati Android Studio.
Sadrži sve alate za izgradnju, platformu i SDK. Dakle, instaliranjem Android Studija dobit ćete sve alate s njim. Predlaže se da se za Android Studio odlučite samo ako imate dobar laptop / računalo. Budući da na vašem računalu treba znatna RAM memorija, a za preuzimanje i instaliranje svih zahtjeva trebaju podaci od 4-5 GB. Ali sve ćete dobiti samo jednim klikom.
# 2) Samo alati naredbenog retka
Ako su vam potrebni samo alati povezani s testiranjem, tada možete preuzeti samo Android SDK upravitelj.
U ovom uputstvu slijedimo drugu metodu jer je prva metoda prilično naprijed.
Otvori ovo URL i pomaknite se prema dolje do zaglavlja Samo alati naredbenog retka, zatim kliknite na odgovarajuću vezu za preuzimanje datoteke koja se temelji na OS-u vašeg računala. Pogledajte donju snimku zaslona za referencu.
Da bismo pokrenuli program, moramo imati Android SDK alate, Platform-alate, Platforme i Alate za izgradnju.
- Otvoren alata i kliknite alati za platforme povežite i preuzmite datoteke.
- Stvorite mapu pod nazivom AndroidSDK i ovdje izvucite preuzete alate i alate za platformu.
- Unutar alata pronaći ćete android.bat mapu, kliknite ili pokrenite datoteku bat-a i prikazat će se prozor Android SDK Manager. Odaberite potrebnu verziju platforme, na primjer, Srodni Androidu 25 i kliknite Instaliraj. Morate odabrati platforme i izraditi alate za potrebnu verziju Android API-ja.
- Prihvatite uvjete i odredbe. Preuzmite i instalirajte platforme i gradite alate. Provjerite nalaze li se sve potrebne datoteke u mapi AndroidSDK.
Zajedno s Android SDK-om, za pokretanje trebamo još nekoliko stvari kako je spomenuto u nastavku.
Alat za mrav:
Apache alat koristit će se za sastavljanje i izgradnju napisanog koda. Pomoću alata Ant možemo generirati JAR datoteku koja je datoteka Java Archive. Koristeći jar datoteku, izvršit će se automatizacija / test slučajevi.
=> Instalirajte Apache ant ovdje
Eclipse IDE i Java:
Nadamo se da morate imati Eclipse IDE i editor za izgradnju našeg koda i Java instaliranih na vašem računalu. Ako ne, instalirajte najnoviju verziju Eclipsea iz ovdje
Za pisanje naših slučajeva automatizacije potreban nam je jezik, a za automatizaciju testova koristimo Javu.
= > Instalirajte Javu ovdje
Konfiguracija
Sljedeće što moramo učiniti je dodati varijablu okruženja za SDK upravitelj. Ovaj alat možete koristiti i bez dodavanja varijable okoline, ali problem je što ga ne možete koristiti svugdje u sustavu.
Moći ćete mu pristupiti samo u mapi koju ste instalirali. Stoga bolje dodajte varijable okruženja za SDK da biste mu pristupili bilo gdje. Sada stvorite varijable okruženja za Ant, Android SDK i za Javu. Dodajte ih sve u varijablu puta.
Da biste to učinili, idite na Sustav -> Napredne postavke sustava -> Kartica Napredno -> Varijable okruženja -> Kliknite Novo u odjeljku Sistemske varijable. Ova se navigacija može razlikovati od sustava do sustava.
Primjer sistemske varijable za staze:
ANDROID_HOME: F: Workspace SDK
DOM ANTA: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Sada dodajte sve ove sistemske varijable u stazu kao što je prikazano u donjem primjeru.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Udari Prijavite se i zatim tipku u redu dugme.
Sad smo spremni za sve postavke.
Prije pokretanja našeg koda, prvo se moramo uvjeriti je li Android uređaj spreman za pokretanje testova na njemu. Za to moramo omogućiti opcije za programere ako još nisu omogućene.
Omogućavanje opcija za programere u Androidu:
- Otvorite postavke telefona i idite na 'Sustav' a zatim da 'O telefonu' odjeljak.
- Tamo ćete naći 'Izgradi broj' .
- Dodirnite broj izrade pet puta.
- Opcija programera bit će omogućena i možete je vidjeti u 'Sustav' .
- Otvorite opcije programera i omogućite 'USB ispravljanje pogrešaka' i 'Provjera aplikacija putem USB-a' .
Kako pregledati elemente korisničkog sučelja na Androidu
Otvorite naredbeni redak bilo gdje i unesite naredbu uiautomatorviewer. Imajte na umu da u naredbi nema razmaka i to je samo jedna riječ. Ako ste pravilno konfigurirali SDK, otvorit će vam se prozor UIAutomator. U suprotnom provjerite jesu li instalacija i konfiguracija ispravno izvedeni.
Pogledajmo upotrebu svakog zaokruženog elementa jedan po jedan.
# 1) Na gornjoj vrpci kliknite drugu ikonu slijeva udesno, tj. Ikonu zaslona. Na prikazanoj slici označena je kao ona koja je zaokružena crvenom bojom.
#dva) Možete spremiti trenutnu snimku zaslona, kao i datoteku izvoza korisničkog sučelja za buduće svrhe. Spremljene datoteke mogu se otvoriti pomoću ikone mape na vrhu.
# 3) Ovaj odjeljak sadrži sve informacije povezane s hijerarhijom korisničkog sučelja. Možete pretraživati pomoću ponuđenog okvira za pretraživanje. Proširite / sažmite hijerarhiju. Krećite se između objekata pomoću strelica gore i dolje.
# 4) 'Pojedinosti o čvoru' mjesto su na kojem dobivamo informacije o elementu korisničkog sučelja.
Prikazuje sve potrebne informacije o elementu poput njegove pristupačnosti, vidljivosti i različitih lokatora kao što su naziv klase, tekst, id resursa, opis sadržaja itd. Pomoću kojih trebamo pristupiti elementu u automatizaciji.
Nakon toga zaslon će izgledati kao što je prikazano u nastavku.
Kliknite Googleov okvir za pretraživanje na uređaju i ponovo napravite snimku zaslona pomoću UIAutomatorViewer.
Na računalu kliknite prikazane komponente korisničkog sučelja i promatrajte. Alat otkriva komponentu koju ste odabrali i prikazuje detalje o komponenti. Odabrana komponenta korisničkog sučelja bit će označena crvenim okvirom na lijevoj strani zaslona.
Uzorak programa ispitivanja
Izrada testnog projekta i predavanja u Eclipseu:
Otvorite Eclipse IDE na računalu i kliknite na Datoteka -> Novo -> Java projekt . Otvorit će se prozor za stvaranje projekta, unesite naziv projekta na primjer “UiAutomator_Demo”. Ostavite sve zadane postavke kakve jesu i dvaput pritisnite gumb za završetak. Sada je vaš projekt stvoren.
Stvoreni projekt prikazat će se na lijevoj strani IDE-a. Desnom tipkom miša kliknite naziv projekta gdje trebate odabrati Novo -> Razred i na prozoru otvorenom za unos naziva klase, na primjer, DemoTest i pritisnite gumb Završi.
Dodavanje staklenki projektu
Trebali bismo dodati sve knjižnice koje koristimo dok automatiziramo testove.
# 1) Desnom tipkom miša kliknite naziv projekta u Eclipseu, a zatim odaberite 'Svojstva' .
#dva) Prikazat će se novi prozor sa svojstvima, odaberite 'Java put izgradnje'.
# 3) Kliknite izbornik Knjižnice i kliknite na 'Dodaj vanjske staklenke' dugme.
# 4) Otvorit će se prozor Upravitelj datoteka. Dođite do mape u kojoj je instaliran SDK. Izaberi android.jar i uiautomator.jar a zatim pritisnite gumb Primijeni i zatvorite dodatni prozor.
U ovom ćemo testu izvršiti malu operaciju u Google pretraživanju kako bismo provjerili prikazuju li se rezultati prema našem upitu za pretraživanje.
Ispod su navedeni koraci za izvođenje koraka:
- Kliknite Googleov okvir za pretraživanje.
- Unesite upit za pretraživanje, na primjer, Pomoć za testiranje softvera
- Pritisnite gumb Enter i provjerite sadrže li rezultati vezu na web mjestu Pomoć za testiranje softvera
Ovo su koraci koje izvodimo ručno.
Automatizirajmo isto.
package com.android.uiautomation; import com.android.uiautomator.core.UiDevice; import com.android.uiautomator.core.UiObject; import com.android.uiautomator.core.UiSelector; import com.android.uiautomator.core.UiObjectNotFoundException; import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class DemoTest extends UiAutomatorTestCase{ public void testApps() throws UiObjectNotFoundException, InterruptedException { getUiDevice().pressHome(); //Step1 UiObject searchBox = new UiObject(new UiSelector().resourceId ('com.google.android.googlequicksearchbox:id/search_edit_frame')); searchBox.clickAndWaitForNewWindow(); //step2 UiObject searchBar = new UiObject(new UiSelector().resourceId ('com.google.android.googlequicksearchbox:id/search_box')); searchBar.setText('SoftwareTestingHelp'); //step3 UiDevice device = getUiDevice(); device.pressEnter(); Thread.sleep(3000); //step4 UiObject results = new UiObject(new UiSelector().textContains('Software Testing Help')); //step5 if(results.exists()){ System.out.println('Passed: Result has been shown for software testing help'); } else{ System.out.println('Failed: Result were not shown for software testing help'); } getUiDevice().pressHome(); } }
Istražimo gornji isječak koda.
U naš smo program uvezli sve potrebne module.
Korak 1 : Pohranjivanje ID-a resursa Googleovog okvira za pretraživanje u UiObject i izvođenje operacije klikanja.
Korak 2 : Unos teksta u okvir za pretraživanje i pritiskanje tipke enter
3. korak : Provjera sadrže li rezultati pretraživanja web stranicu Pomoć za testiranje softvera. Ispis 'Prošao' poruku na konzolu ako željeni tekst postoji, inače ispišite poruku 'Nije uspjelo'.
Popis naredbi
# 1) Stvorite testni projekt
Android stvori uitest-projekt -t -p
Ova naredba stvara datoteku build.xml koja će se dalje koristiti za generiranje Jar-a.
što se c ++ koristi danas
-t parametar uzima verziju Androida kao parametar. Morate navesti koju verziju androida ciljate za testiranje. Primjer: android-25 tj. ciljamo verziju Androida 7.
-p parametar je mjesto gdje trebate spomenuti svoj put do projekta. Primjer: D: Radni prostor UiAutomator_Demo
-n je naziv projekta Primjer: UiAutomator_Demo
# 2) Izgradite svoj izvorni kod
Kao što je ranije spomenuto, koristili bismo Apache ant kao alat za izgradnju za kompajliranje izvornog koda i generiranje izvršne JAR datoteke.
Građa mrava
Ako u vrijeme sastavljanja nema pogreške, na konzoli će se prikazati poruka 'Izgradnja je uspješna' .
Tada izvršnu datoteku jar možete pronaći u jesam mapa vašeg projekta s imenom navedenim u vrijeme izvršavanja prve naredbe. Ako u vašem kodu postoje problemi, tada će se pogreške prikazati na konzoli, a JAR datoteka neće biti generirana.
# 3) Guranje generirane JAR datoteke na uređaj
Adb push / data / local / tmp /
Primjer: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
Kako se testovi UiAutomator izvode na temelju JAR datoteke gurnute na uređaj, prvo moramo gurnuti svoju jar datoteku na uređaj. Za to ćemo upotrijebiti adb push naredbu.
Ova naredba uzima dva parametra - jedan je datoteka koju treba gurnuti na Android uređaj, a druga je odredište.
Drugi argument za ovu naredbu je odredišni put na koji treba gurnuti našu datoteku. U našem slučaju to bi trebao biti / data / local / tmp /
# 4) Pokrenite test
Sad imamo sve spremno. Jedino što čeka je izvršenje našeg testa.
Adb shell uiautomator runtest –c
Primjer: adb ljuska uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Ako ne znate kako doći do naziva kvalificiranog za razred, slijedite postupak u nastavku:
U svom Eclipseu kliknite padajući padajući projekt i pređite na klasu u kojoj je prisutan testni kôd. Ovdje je klasa DemoTest. Desnom tipkom miša kliknite naziv klase. Otvorit će se prozor, kliknite na “Kopiraj kvalificirano ime” .
Čim pritisnete ovu naredbu u naredbenom retku, test će se pokrenuti i sada možete vidjeti kako se test provodi na uređaju.
Najčešća pitanja
P # 1) Je li postavljanje puta za SDK obavezno?
Odgovor: Ne, ali uputno je postaviti putanju, jer ako put SDK-a ne postavite u varijablama okruženja, datotekama možete pristupiti samo na mjestu na kojem je instaliran.
Dakle, za pristup SDK-u bilo gdje trebate postaviti put. Ne samo za SDK, već je poželjno slijediti isto za Javu i ant.
P # 2) Zašto UIAutomatorViewer prikazuje pogrešku tijekom snimanja snimke zaslona?
Odgovor:
Tri su moguća razloga za to:
# 1) Adb nije prepoznao vaš uređaj i morate ažurirati softver upravljačkog programa uređaja. Možete ih potražiti na mreži i instalirati, na primjer, ako radite s LG uređajem, tada možete potražiti LG adb upravljačke programe.
#dva) Vaš uređaj nije u stanju mirovanja: Za zaslon koji nije statičan, poput reprodukcije videozapisa ili prikaza bilo kakve animacije, uiautomatorviewer u tim slučajevima ne može napraviti snimku zaslona. Stoga osigurajte da zaslon vašeg uređaja ne prikazuje videozapise / animacije u vrijeme snimanja snimke zaslona.
# 3) Nepodudaranje verzije Androida: Provjerite je li vaša SDK api verzija viša ili jednaka api razini Android verzije uređaja. Ako ne, možete ažurirati SDK klikom na datoteku android.bat ili putem SDK upravitelja.
3. pitanje) Postoji li službena dokumentacija za UIAutomatorViewer?
Odgovor: Da, Google je pružio dokumentacija za UIAutomatorViewer. Iako nije u potpunosti pokriven o svim temama, ali možete dobiti ideju o ovom alatu.
P # 4) Zašto naredba adb devices ne prikazuje nijedan uređaj?
Odgovor: Provjerite jesu li na vašem uređaju omogućene opcije programera. Kako bi se omogućilo Opcija programera na Android uređaju slijedite postupak u nastavku. Idite na postavke uređaja i O telefonu . Dodirnite 5 puta na broj gradnje. Poruka zdravice 'Sad ste programer' prikazat će se i dodati će se opcija postavki programera.
P # 5) Zašto Adb još uvijek nije prepoznao moj uređaj?
Odgovor: Možda postoji problem s upravljačkim programom. Morate ažurirati upravljački program koji pomaže u otkrivanju uređaja.
koliko ima tvrtki za cyber sigurnost
Slijedite korake u nastavku za ažuriranje upravljačkog programa.
# 1) Otvorite svoj sustav i otvorite upravitelj uređaja; ovu postavku možete dobiti desnim klikom miša Gumb Start .
#dva) Otvorite Upravitelj uređaja, tamo možete pronaći ime svog uređaja na Android uređajima / prijenosnim uređajima.
# 3) Desnom tipkom miša kliknite naziv uređaja i odaberite Ažuriraj upravljačke programe.
# 4) Kliknite opciju Pregledaj moje računalo za softver upravljačkog programa i kliknite neka me odabere s popisa upravljačkih programa na računalu.
# 5) Odaberite bilo koji od prikladnih upravljačkih programa za instalaciju i pritisnite sljedeći gumb. Ako je upravljački program uređaja uspješno instaliran, dolje će se prikazati poruka.
# 6) Budući da se radi o hardverskim promjenama primijenjenim na vaš sustav, možda ćete trebati ponovno pokrenuti sustav ako se na to zatraži.
# 7) Ako smatrate da uređaj nije prepoznat, prvo možete promijeniti vezu načina. Ti se načini prikazuju na uređaju kada svoj uređaj povežete sa sustavom.
Primjer: Prijenos datoteka, prijenos fotografija, MIDI1.
P # 6) Mogu li vidjeti pojedinosti svake komponente korisničkog sučelja za Android aplikaciju?
Odgovor: Gotovo sve pojedinosti o komponentama korisničkog sučelja možete vidjeti u UIAutomatorVieweru. Ako se bilo koji UI / izgled koristi osim zadanih zadanih od androida, tada ih nije moguće pregledati u alatu UIAutomatorViewer.
Možete zatražiti od svog programera da stavi bilo koji identifikator u element korisničkog sučelja za automatizaciju značajke. Na primjer, stavljanje ID-a resursa, opisa sadržaja itd.
P # 7) Koristi li Appium alat UIAutomator alat?
Odgovor: Da.
P # 8) Podržava li ovaj alat bilo koji drugi uređaj poput Windows / iOS-a osim Androida?
Odgovor: Ne, ovo je razvio Google i podržava samo Android uređaje.
P # 9) Što je UIautomator Android?
Odgovor: UIAutomator je alat / okvir koji pomaže u automatizaciji testnih slučajeva Android aplikacija.
Q # 10) Kako postavljate UIAutomator?
Odgovor: Detaljno objašnjenje potražite u odjeljku Instalacija ovog vodiča.
Q # 11) Što je UIAutomator u Appiumu?
Odgovor: UiAutomator je testni okvir / alat koji Android osigurava za automatizaciju testiranja Android aplikacija, Appium ga interno koristi interno.
Q # 12) Kako pregledavate element u UIAutomatoru?
Odgovor: Kada završite s postavljanjem, otvorite naredbeni redak i unesite naredbu UIAutomatorViewer. Na računalu će se prikazati prozor. Povežite mobitel s računalom i kliknite drugu ikonu zaslona uređaja (odlagalište uiautomatora) na vrhu.
Nakon tog uređaja, trenutni zaslon prikazat će se na prozoru inspektora. Kliknite bilo koji od elemenata da biste dobili informacije o tom elementu. Za detaljno objašnjenje pogledajte Pregledajte potreban element korisničkog sučelja odjeljak.
Zaključak
Sažeti,
- UIAutomatorViewer je alat za grafičko korisničko sučelje za inspekciju UI sloja bilo koje aplikacije.
- Morate znati strukturu korisničkog sučelja aplikacije koja se testira kako bi bilo lakše automatizirati korisničku interakciju u sloju korisničkog sučelja aplikacije
- UIAutomator koristi XML snimku i snimku zaslona. Možete znati hijerarhiju rasporeda.
- Za automatizaciju UI testova aplikacija za Android prvo morate identificirati neke lokatore da biste izvršili interakciju s aplikacijom Primjer: Naziv klase, ID resursa, tekst.
- Adb je dio SDK-a koji se naziva Android Debug Bridge.
- UIAutomatorViewer možete otvoriti unosom naredbe uiautomatorviewer u naredbenom retku.
- Budući da je ovaj alat besplatan, može ga koristiti svatko i pouzdan je.
Sretno čitanje !!
Preporučena literatura
- Kako automatizirati web aplikaciju u pregledniku Chrome na Android uređaju
- Automatizirajte izvornu aplikaciju na Android uređaju pomoću Appiuma
- 11 najboljih alata za automatizaciju za testiranje Android aplikacija (Android Tools Testing Tools)
- 30 najboljih alata za testiranje grafičkog sučelja za automatizaciju GUI testa (2021 POPIS)
- Vodič za Katalon Studio: Besplatni alat za automatizaciju testa koji ste čekali
- Praktični pregled Ranorex Studija: sve-u-jednom rješenje za automatizaciju testa
- Vodič za automatizaciju SeeTesta: Vodič za alat za automatizaciju mobilnih testova
- Vodič za praktični pregled alata za automatizaciju testa TestProject