uiautomatorviewer tutorial
Ta vadnica pojasnjuje, kako prenesti, namestiti in konfigurirati UIAutomator ter kako uporabiti UIAutomatorViewer za pregled Elementa v aplikaciji Android:
Google je zagotovil lastna orodja za avtomatizacijo preskusov Android in UIAutomatorviewer je eno izmed njih. Če imate idejo o selenu, potem boste enostavno razumeli UIAutomator.
V tej vadnici boste našli podrobno razlago UIAutomatorja skupaj z njegovo namestitvijo, konfiguracijo, komponentami, ukazi, vzorčnim testnim programom in nekaterimi najpogostejšimi pogostimi vprašanji.
Raziskujmo !!
zaznavanje puščanja pomnilnika c ++
Kaj se boste naučili:
Kaj je UIAutomatorViewer?
UIAutomatorViewer je del upravitelja SDK za Android in je orodje za grafični uporabniški vmesnik inšpektorja uporabniškega vmesnika, ki nam pomaga pri pregledu elementov uporabniškega vmesnika aplikacije za Android.
Pregled aplikacije je pomemben, saj za avtomatizacijo aplikacije potrebujemo lokatorje, kot so ID-ji virov, razred, besedilo komponente aplikacije Android.
UIAutomatorViewer bo posnel posnetek zaslona XML trenutnega zaslona. S klikom na kateri koli element na zaslonu lahko spoznamo razred, ki se uporablja za predstavitev, element na zaslonu skupaj z vsemi lastnostmi, navedenimi na desni strani orodja.
Hierarhija predmetov je vrstni red predmetov, v katerem so definirani. Na primer ,razred je otrok drugega razreda. Postavljen je v zgornji desni del orodja.
Z UIAutomator lahko pišete primere za avtomatizacijo aplikacij za Android. Ti testi se bodo izvajali na sloju uporabniškega vmesnika aplikacije. Vsako dejanje, ki ga preizkuševalnik izvede, lahko simulirate ročno, na primer , preverjanje prijave.
Namestitev
To orodje lahko namestite na dva načina.
# 1) Android Studio
Če pogosto delate s testiranjem / razvojem aplikacij za Android, lahko namestite Android Studio.
Vsebuje vsa orodja za gradnjo, platformo in SDK. Z namestitvijo sistema Android Studio boste torej dobili vsa orodja. Priporočljivo je, da se za Android Studio odločite le, če imate dober prenosnik / računalnik. Ker v računalniku potrebujete precej RAM-a in potrebujete 4-5 GB podatkov za prenos in namestitev vseh zahtev. Toda vse boste dobili z enim samim klikom.
# 2) Samo orodja ukazne vrstice
Če potrebujete samo orodja, povezana s testiranjem, lahko prenesete samo upravitelja Android SDK.
V tej vadnici sledimo drugi metodi, saj je prva metoda precej naravnost naprej.
Odpri to URL in se pomaknite navzdol do glave Samo orodja ukazne vrstice, nato kliknite povezavo ustrezne datoteke za prenos, ki temelji na OS računalnika. Glejte spodnji posnetek zaslona za referenco.
Za zagon programa moramo imeti orodja Android SDK, orodja za platforme, platforme in orodja za gradnjo.
- Odprto orodja in kliknite orodja za platforme povezati in prenesti datoteke.
- Ustvarite mapo z imenom AndroidSDK in tukaj izvlecite prenesena orodja in orodja platforme.
- Znotraj orodij boste našli android.bat mapo, kliknite ali zaženite datoteko bat in prikazalo se bo okno Android SDK Manager. Izberite zahtevano različico platforme, na primer, Android 25 in kliknite namestitev. Izbrati morate platforme in zgraditi orodja za zahtevano različico API-ja za Android.
- Sprejmite pogoje in določila. Prenesite in namestite platforme ter gradite orodja. Prepričajte se, da so vse potrebne datoteke v mapi AndroidSDK.
Skupaj z Android SDK potrebujemo še nekaj stvari, da začnemo, kot je navedeno spodaj.
Orodje za mravlje:
Orodje Apache bo uporabljeno za sestavljanje in izdelavo zapisane kode. Z orodjem Ant lahko ustvarimo datoteko JAR, ki je datoteka Java Archive. Z uporabo datoteke jar bodo izvedeni avtomatizacijski kompleti / testni primeri.
=> Namestite Apache ant tukaj
Eclipse IDE in Java:
Upamo, da morate imeti Eclipse IDE in urejevalnik za izdelavo naše kode in Java nameščene v vašem računalniku. V nasprotnem primeru namestite najnovejšo različico programa Eclipse iz tukaj
Za pisanje testnih primerov avtomatizacije potrebujemo jezik, za avtomatizacijo testov pa uporabljamo Javo.
= > Namestite Javo tukaj
Konfiguracija
Naslednja stvar, ki jo moramo storiti, je dodati spremenljivko okolja za upravitelja SDK. To orodje lahko uporabljate tudi brez dodajanja spremenljivke okolja, vendar je težava v tem, da ga ne morete uporabljati povsod v sistemu.
Do njega boste lahko dostopali samo v mapi, v katero ste ga namestili. Zato raje dodajte spremenljivke okolja, da lahko SDK dostopa kjer koli. Zdaj ustvarite spremenljivke okolja za Ant, Android SDK in Java. Vse jih dodajte spremenljivki poti.
Če želite to narediti, se pomaknite do Sistem -> Napredne sistemske nastavitve -> zavihek Dodatno -> Spremenljivke okolja -> Kliknite Novo v razdelku Sistemske spremenljivke. Ta navigacija se lahko razlikuje od sistema do sistema.
Primer sistemske spremenljivke za poti:
ANDROID_HOME: F: Workspace SDK
ANT_HOME: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Zdaj dodajte vse te sistemske spremenljivke na pot, kot je prikazano v spodnjem primeru.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Udari Prijavite se in nato v redu .
Zdaj imamo vse nastavitve pripravljene.
Preden začnemo z našo kodo, se moramo najprej prepričati, da je naprava Android pripravljena za izvajanje preskusov na njej. Za to moramo omogočiti možnosti za razvijalce, če še niso omogočene.
Omogočanje možnosti za razvijalce v Androidu:
- Odprite nastavitve telefona in se pomaknite do 'Sistem' in nato do »O telefonu« oddelku.
- Tam boste našli »Številka gradnje« .
- Petkrat se dotaknite številke gradnje.
- Možnost razvijalca bo omogočena in jo lahko vidite v 'Sistem' .
- Odprite možnosti za razvijalce in omogočite 'USB razhroščevanje' in »Preveri aplikacije prek USB-ja« .
Kako pregledati elemente uporabniškega vmesnika v Androidu
Odprite ukazni poziv kjer koli in vnesite ukaz uiautomatorviewer. Upoštevajte, da v ukazu ni presledkov in gre za samo eno besedo. Če ste SDK pravilno konfigurirali, se odpre okno UIAutomator. V nasprotnem primeru preverite, ali sta namestitev in konfiguracija opravljeni pravilno.
Oglejmo si uporabo vsakega obkroženega elementa enega za drugim.
# 1) Na zgornjem traku kliknite drugo ikono od leve proti desni, tj. Ikono posnetka zaslona. Na prikazani sliki je označena kot tista, ki je obkrožena z rdečo.
#two) Trenutni posnetek zaslona in datoteko izpisa uporabniškega vmesnika lahko shranite za prihodnje namene. Shranjene datoteke lahko odprete z ikono mape na vrhu.
# 3) Ta razdelek vsebuje vse informacije, povezane s hierarhijo uporabniškega vmesnika. Iščete lahko s priloženim iskalnim poljem. Razširite / strnite hierarhijo. Premikajte se med predmeti s puščicama gor in dol.
# 4) »Podrobnosti o vozlišču« je kraj, kjer dobimo informacije o elementu uporabniškega vmesnika.
Prikaže vse potrebne informacije o elementu, kot so njegova dostopnost, vidnost in različni lokatorji, kot so ime razreda, besedilo, ID vira, opis vsebine itd. S pomočjo katerih moramo do elementa dostopati v avtomatizaciji.
Po tem bo zaslon videti, kot je prikazano spodaj.
Kliknite Googlovo iskalno polje na napravi in znova naredite posnetek zaslona z UIAutomatorViewer.
Na računalniku kliknite prikazane komponente uporabniškega vmesnika in opazujte. Orodje zazna komponento, ki ste jo izbrali, in prikaže podrobnosti o komponenti. Izbrana komponenta uporabniškega vmesnika bo označena z rdečim poljem na levi strani zaslona.
Vzorčni testni program
Ustvarjanje testnega projekta in predavanja v Eclipse:
V računalniku odprite Eclipse IDE in kliknite Datoteka -> Novo -> Projekt Java . Odprlo se bo okno za ustvarjanje projekta, vnesite ime projekta na primer “UiAutomator_Demo”. Vse privzete nastavitve pustite nespremenjene in dvakrat kliknite gumb za dokončanje. Zdaj je vaš projekt ustvarjen.
Ustvarjeni projekt bo prikazan na levi strani IDE. Z desno miškino tipko kliknite ime projekta, kjer morate izbrati Novo -> Razred in v oknu, ki se odpre za vnos imena predavanja, na primer, DemoTest in pritisnite gumb za zaključek.
Dodajanje kozarcev projektu
Dodati bi morali vse knjižnice, ki jih uporabljamo med avtomatizacijo testov.
# 1) Z desno miškino tipko kliknite ime projekta v programu Eclipse in nato izberite 'Lastnosti' .
#two) Prikaže se novo okno z lastnostmi, izberite “Java build path”.
# 3) Kliknite meni Knjižnice in kliknite na “Dodaj zunanje kozarce” .
# 4) Odpre se okno Upravitelj datotek. Pomaknite se do mape, v kateri je nameščen SDK. Izberite android.jar in uiautomator.jar in nato pritisnite gumb za uveljavitev in zaprite dodatno okno.
vprašanja in odgovori za razgovore za razvijalce jave
V tem preizkusu bomo izvedli majhno operacijo v Googlovem iskanju, da preverimo, ali so rezultati prikazani v skladu z našo iskalno poizvedbo.
Spodaj so navedeni koraki za izvedbo korakov:
- Kliknite Googlovo iskalno polje.
- Vnesite iskalno poizvedbo, na primer, Pomoč za testiranje programske opreme
- Pritisnite gumb Enter in preverite, ali rezultati vsebujejo povezavo do spletnega mesta za pomoč pri testiranju programske opreme
To so koraki, ki jih izvajamo ročno.
Avtomatizirajmo enako.
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(); } }
Raziščimo zgornji delček kode.
V naš program smo uvozili vse zahtevane module.
Korak 1 : Shranjevanje ID-ja vira Googlovega iskalnega polja v UiObject in izvedba klika.
2. korak : Vnesite besedilo v iskalno polje in pritisnite Enter
3. korak : Preverjanje, ali rezultati iskanja vsebujejo spletno mesto s pomočjo za preskušanje programske opreme. Natisni »Uspešno opravljeno« sporočilo na konzolo, če želeno besedilo obstaja, sicer natisnite sporočilo »Failed«.
Seznam ukazov
# 1) Ustvarite testni projekt
Android ustvari uitest-project -t -p
Ta ukaz ustvari datoteko build.xml, ki se bo nadalje uporabljala za generiranje Jar.
-t parameter vzame različico Androida kot parameter. Navesti morate, katero različico androida ciljate na preizkus. Primer: android-25, torej ciljamo na različico Android 7.
-p je parameter, kjer morate omeniti svojo pot do projekta. Primer: D: Delovni prostor UiAutomator_Demo
-n je ime projekta Primer: UiAutomator_Demo
# 2) Zgradite svojo izvorno kodo
Kot smo že omenili, bi uporabili Apache ant kot orodje za gradnjo za sestavljanje naše izvorne kode in ustvarjanje izvršljive datoteke JAR.
Zgradba mravlje
Če v času prevajanja ni napake, se na konzoli prikaže sporočilo »Gradnja je uspešna« .
Nato lahko izvršljivo datoteko jar najdete v sem mapa vašega projekta z imenom, navedenim v času izvajanja prvega ukaza. Če so v vaši kodi težave, bodo napake prikazane na konzoli in datoteka JAR ne bo ustvarjena.
# 3) potiskanje ustvarjene datoteke JAR v napravo
Adb push / data / local / tmp /
Primer: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
Ko se preizkusi UiAutomator izvajajo na podlagi datoteke JAR, potisnjene v napravo, moramo najprej potisniti svojo datoteko jar v napravo. Za to bomo uporabili ukaz adb push.
Ta ukaz ima dva parametra - eden je datoteka, ki jo je treba potisniti v napravo Android, druga pa ciljna pot.
Drugi argument za ta ukaz je ciljna pot, kamor naj bo naša datoteka potisnjena. V našem primeru bi to moral biti / data / local / tmp /
# 4) Zaženite test
Zdaj imamo vse pripravljeno. Edina stvar, ki čaka, je izvedba našega testa.
Adb shell uiautomator runtest –c
Primer: adb lupina uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Če ne veste, kako pridobiti ime, ki izpolnjuje pogoje, sledite spodnjemu postopku:
V svojem Eclipseu kliknite spustni projekt in se pomaknite do razreda, v katerem je preskusna koda. Tu je razred DemoTest. Z desno miškino tipko kliknite ime predavanja. Odprlo se bo okno, kliknite na “Kopiraj kvalificirano ime” .
Takoj, ko v ukaznem pozivu pritisnete ta ukaz, se test začne izvajati in zdaj lahko vidite, kako se test izvaja v napravi.
Pogosta vprašanja
V # 1) Ali je nastavitev poti za SDK obvezna?
Odgovor: Ne, vendar je priporočljivo, da pot nastavite, ker če poti SDK ne nastavite v spremenljivkah okolja, lahko do datotek dostopate samo na mestu, kjer je nameščen.
Torej, za dostop do SDK kjer koli morate določiti pot. Ne samo za SDK, vendar je priporočljivo, da sledite enakemu za Javo in ant.
Q # 2) Zakaj UIAutomatorViewer prikazuje napako med snemanjem posnetka zaslona?
Odgovor:
Za to obstajajo 3 možni razlogi:
# 1) Adb ni prepoznal vaše naprave, zato morate posodobiti programsko opremo gonilnika naprave. Lahko jih iščete v spletu in namestite, na primer, če delate z napravo LG, lahko poiščete gonilnike LG adb.
#two) Naprava ni v stanju mirovanja: Za zaslon, ki ni statičen, na primer predvajanje videoposnetka ali prikaz animacije, uiautomatorviewer v teh primerih ne more narediti posnetka zaslona. Zato poskrbite, da na zaslonu vaše naprave med snemanjem zaslona ne bodo prikazani nobeni videoposnetki / animacije.
# 3) Neujemanje različice Androida: Prepričajte se, da je različica API-ja SDK višja ali enaka ravni različice API-ja naprave Android. Če ne, lahko SDK posodobite s klikom na datoteko android.bat ali prek upravitelja SDK.
3. vprašanje) Ali obstaja kakšna uradna dokumentacija za UIAutomatorViewer?
Odgovor: Da, Google je zagotovil dokumentacijo za UIAutomatorViewer. Čeprav ni v celoti zajeto o vseh temah, lahko pa dobite idejo o tem orodju.
V # 4) Zakaj ukaz adb naprav ne prikaže nobene naprave?
Odgovor: Preverite, ali so v vaši napravi omogočene možnosti za razvijalce. Omogočiti Možnost razvijalcev v napravi Android sledite spodnjemu postopku. Pojdite v nastavitve naprave in Glede telefona . 5-krat se dotaknite številke gradnje. Nazdravljeno sporočilo 'Zdaj ste razvijalec' bo prikazana in dodana bo možnost nastavitev za razvijalce.
V # 5) Zakaj Adb še vedno ne prepozna moje naprave?
Odgovor: Morda je prišlo do težave z gonilnikom. Posodobiti morate gonilnik, ki pomaga zaznati napravo.
Za posodobitev gonilnika sledite spodnjim korakom.
# 1) Odprite sistem in odprite upravitelja naprav; to nastavitev lahko dobite z desnim klikom Gumb Start .
#two) Odprite Device Manager, kjer lahko v napravi Android / prenosnih napravah poiščete ime svoje naprave.
# 3) Z desno miškino tipko kliknite ime naprave in izberite Posodobi gonilnike.
# 4) Kliknite možnost Brskaj po mojem računalniku za programsko opremo gonilnikov in kliknite dovoli mi, da izberem s seznama gonilnikov naprav v računalniku.
# 5) Izberite katerega koli ustreznega gonilnika za namestitev in pritisnite naslednji gumb. Če je gonilnik naprave uspešno nameščen, bo spodaj prikazano sporočilo.
# 6) Ker gre za spremembe strojne opreme, ki veljajo za vaš sistem, boste morda morali sistem znova zagnati, če boste pozvani, da to storite.
# 7) Če menite, da naprava ni prepoznana, lahko najprej spremenite povezavo načina. Ti načini se prikažejo v napravi, ko napravo povežete s sistemom.
Primer: Prenos datotek, prenos fotografij, MIDI1.
V # 6) Ali lahko vidim podrobnosti o vsaki komponenti uporabniškega vmesnika za aplikacijo Android?
Odgovor: V UIAutomatorViewer si lahko ogledate skoraj vse podrobnosti o komponentah uporabniškega vmesnika. Če kateri koli uporabniški vmesnik / postavitev uporablja drugače od privzetih nastavitev, ki jih ponuja Android, jih v orodju UIAutomatorViewer ni mogoče videti.
Za razvijalca lahko prosite, naj elementu uporabniškega vmesnika doda kateri koli identifikator za avtomatizacijo funkcije. Na primer, dajanje ID-ja vira, opisa vsebine itd.
V # 7) Ali orodje Appium v njem uporablja orodje UIAutomator?
Odgovor: Da.
Q # 8) Ali to orodje podpira katero koli drugo napravo, kot je Windows / iOS, razen Androida?
Odgovor: Ne, to je razvil Google in podpira samo naprave Android.
privzeti prehod ni na voljo popravi Windows 10
Q # 9) Kaj je UIautomator Android?
Odgovor: UIAutomator je orodje / ogrodje, ki pomaga avtomatizirati testne primere aplikacij Android.
Q # 10) Kako nastavim UIAutomator?
Odgovor: Podrobna pojasnila najdete v razdelku o namestitvi te vadnice.
Q # 11) Kaj je UIAutomator v Appiumu?
Odgovor: UiAutomator je testno ogrodje / orodje, ki ga ponuja Android za avtomatizacijo testiranja aplikacij Android, Appium pa ga interno uporablja.
Q # 12) Kako preverite element v UIAutomatorju?
Odgovor: Ko končate z namestitvijo, odprite ukazni poziv in vnesite ukaz UIAutomatorViewer. V računalniku se prikaže okno. Povežite mobilni telefon z osebnim računalnikom in na vrhu kliknite drugo sliko zaslona naprave (dump uiautomator).
Po tej napravi se v oknu pregledovalnika prikaže trenutni zaslon. Kliknite katerega koli od elementov, da dobite informacije o tem elementu. Za podrobno razlago glejte Preglejte zahtevani element uporabniškega vmesnika oddelku.
Zaključek
Povzeti,
- UIAutomatorViewer je orodje za grafični uporabniški vmesnik za pregledovanje sloja uporabniškega vmesnika katere koli aplikacije.
- Poznati morate strukturo uporabniškega vmesnika preskušane aplikacije, da bo lažje avtomatizirati uporabniško interakcijo v sloju uporabniškega vmesnika aplikacije
- UIAutomator uporablja posnetek XML in posnetek zaslona. Poznate hierarhijo postavitve.
- Za avtomatizacijo testov uporabniškega vmesnika aplikacij za Android morate najprej določiti nekatere lokatorje, da boste lahko izvedli interakcijo z aplikacijo Primer: Ime predavanja, ID vira, besedilo.
- Adb je del SDK, ki se imenuje Android Debug Bridge.
- UIAutomatorViewer lahko odprete z vnosom ukaza uiautomatorviewer v ukazni vrstici.
- Ker je to orodje brezplačno, ga lahko uporablja kdorkoli in je zanesljivo.
Veselo branje !!
Priporočeno branje
- Kako avtomatizirati spletno aplikacijo v brskalniku Chrome v napravi Android
- Avtomatizirajte izvorno aplikacijo v napravi Android z aplikacijo Appium
- 11 najboljših orodij za avtomatizacijo za testiranje aplikacij za Android (orodja za testiranje aplikacij za Android)
- 30 najboljših orodij za testiranje grafičnega uporabniškega vmesnika za avtomatizacijo preizkusov GUI (2021 LIST)
- Vadnica Katalon Studio: brezplačno orodje za avtomatizacijo preizkusov, ki ste ga čakali
- Praktični pregled Ranorex Studia: rešitev za avtomatizacijo preizkusov 'vse v enem'
- SeeTest Vadnica za avtomatizacijo: Priročnik za orodje za avtomatizacijo mobilnih testov
- Vadnica za praktični pregled orodja za avtomatizacijo preizkusov TestProject