uiautomatorviewer tutorial
Tento výukový program vysvetľuje, ako prevziať, nainštalovať a nakonfigurovať UIAutomator a ako používať UIAutomatorViewer na kontrolu prvku v aplikácii pre Android:
Spoločnosť Google poskytla svoje vlastné nástroje na automatizáciu testovania systému Android a jedným z nich je aj UIAutomatorviewer. Ak máte predstavu o seléne, potom UIAutomator ľahko pochopíte.
Tento tutoriál vám poskytne podrobné vysvetlenie programu UIAutomator spolu s jeho inštaláciou, konfiguráciou, komponentmi, príkazmi, ukážkovým testovacím programom a niektorými často kladenými otázkami.
Poďme preskúmať !!
prepojený zoznam uzol c ++
Čo sa dozviete:
Čo je UIAutomatorViewer?
UIAutomatorViewer je súčasťou správcu súpravy Android SDK a je to nástroj UI inšpektora GUI (grafické používateľské rozhranie), ktorý nám pomáha kontrolovať prvky používateľského rozhrania aplikácie pre Android.
Kontrola aplikácie je dôležitá, pretože na automatizáciu aplikácie potrebujeme lokátory, ako sú ID zdrojov, trieda, text komponentu aplikácie pre Android.
UIAutomatorViewer vytvorí snímku obrazovky XML s aktuálnou obrazovkou. Kliknutím na ľubovoľný prvok na obrazovke môžeme získať informácie o triede, ktorá sa používa na reprezentáciu, prvku na obrazovke a všetkých vlastnostiach uvedených na pravej strane nástroja.
Hierarchia objektov je poradie objektov, v ktorom sú definované. Napríklad ,trieda je dieťaťom inej triedy. Je umiestnený v pravej hornej časti nástroja.
Pomocou UIAutomator môžete písať automatizačné testovacie prípady pre aplikácie pre Android. Tieto testy sa vykonajú na vrstve používateľského rozhrania aplikácie. Môžete simulovať každú činnosť, ktorú tester vykoná ručne, napríklad , overenie prihlásenia.
Inštalácia
Tento nástroj môžete nainštalovať dvoma spôsobmi.
# 1) Android Studio
Ak často pracujete s testovaním / vývojom aplikácií pre Android, môžete si nainštalovať Android Studio.
Má všetky nástroje na zostavenie, platformu a SDK. Inštaláciou Android Studio teda získate všetky nástroje. Pre Android Studio sa odporúča iba v prípade, že máte dobrý notebook / PC. Pretože váš počítač vyžaduje značnú pamäť RAM a na stiahnutie a inštaláciu všetkých požiadaviek je potrebných 4 - 5 GB dát. Všetko však získate jediným kliknutím.
# 2) Iba nástroje príkazového riadku
Ak potrebujete iba nástroje súvisiace s testovaním, môžete si stiahnuť iba správcu súpravy Android SDK.
V tomto výučbe sa riadime druhou metódou, pretože prvá metóda je do značnej miery jednoduchá.
Otvorte toto URL a posuňte sa nadol až k hlavičke Iba nástroje príkazového riadku, potom kliknite na odkaz na vhodný súbor na stiahnutie podľa operačného systému vášho stroja. Referenčné informácie nájdete na nasledujúcej snímke obrazovky.
Na spustenie programu potrebujeme nástroje Android SDK, nástroje platformy, platformy a nástroje na vytváranie.
- Otvorené nástroje a kliknite na ikonu nástroje na platforme prepojiť a stiahnuť súbory.
- Vytvorte priečinok s názvom AndroidSDK a extrahujte tu stiahnuté nástroje a nástroje platformy.
- Vo vnútri náradia nájdete android.bat priečinok, kliknite alebo spustite súbor bat a zobrazí sa okno Android SDK Manager. Vyberte požadovanú verziu platformy, napríklad, Android 25 a kliknite na inštalovať. Musíte zvoliť platformy a vytvoriť nástroje pre požadovanú verziu rozhrania Android API.
- Prijmite zmluvné podmienky. Stiahnite a nainštalujte platformy a nástroje na vytváranie. Uistite sa, že všetky požadované súbory sa nachádzajú v priečinku AndroidSDK.
Spolu s Android SDK potrebujeme na začiatok niekoľko ďalších vecí, ktoré sú uvedené nižšie.
Ant Tool:
Na zostavenie a zostavenie napísaného kódu sa použije nástroj Apache. Pomocou nástroja Ant môžeme vygenerovať súbor JAR, ktorý je súborom Java Archive. Pomocou súboru jar sa vykoná automatizačná sada / testovacie prípady.
=> Nainštalujte si Apache ant tu
Eclipse IDE a Java:
Dúfame, že na zostavenie nášho kódu a jazyka Java vo vašom počítači musíte mať IDE a editor Eclipse. Ak nie, nainštalujte si najnovšiu verziu Eclipse z tu
Na napísanie našich automatizačných testovacích prípadov potrebujeme jazyk a na automatizáciu našich testov používame jazyk Java.
= > Inštalácia Java tu
Konfigurácia
Ďalšia vec, ktorú musíme urobiť, je pridať premennú prostredia pre správcu SDK. Tento nástroj môžete použiť aj bez pridania premennej prostredia, problém však je, že ho nemôžete použiť všade v systéme.
Prístup k nim budete mať iba v priečinku, do ktorého ste ich nainštalovali. Preto by sme mali lepšie pridať premenné prostredia pre SDK, aby k nim mali prístup kdekoľvek. Teraz vytvorte premenné prostredia pre Ant, Android SDK a pre Java. Pridajte všetky do premennej cesta.
Ak to chcete urobiť, prejdite na Systém -> Rozšírené nastavenia systému -> karta Rozšírené -> Premenné prostredia -> Kliknite na položku Nový v časti Systémové premenné. Táto navigácia sa môže líšiť od systému k systému.
Príklad systémovej premennej pre cesty:
ANDROID_HOME: F: Workspace SDK
ANT_HOME: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Teraz pridajte všetky tieto systémové premenné do cesty, ako je to znázornené v príklade nižšie.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Hit Podať žiadosť tlačidlo a potom Ok tlačidlo.
Teraz máme všetko pripravené.
Pred spustením nášho kódu sa najskôr musíme ubezpečiť, že je zariadenie Android pripravené na vykonanie testov na ňom. Ak to ešte nie je povolené, musíme povoliť možnosti pre vývojárov.
Povolenie možností pre vývojárov v systéme Android:
- Otvorte nastavenia telefónu a prejdite na „Systém“ a potom do 'O telefóne' oddiel.
- Tam nájdete „Build number“ .
- Klepnite na číslo zostavy päťkrát.
- Možnosť pre vývojárov bude povolená a môžete ju vidieť v priečinku „Systém“ .
- Otvorte možnosti pre vývojárov a povoľte ich 'Ladenie USB' a „Verify apps over USB“ .
Ako skontrolovať prvky používateľského rozhrania v systéme Android
Otvorte príkazový riadok kdekoľvek a zadajte príkaz uiautomatorviewer. Upozorňujeme, že v príkaze nie sú žiadne medzery a jedná sa iba o jedno slovo. Ak ste správne nakonfigurovali SDK, otvorí sa vám okno UIAutomator. V opačnom prípade skontrolujte, či je inštalácia a konfigurácia vykonaná správne.
Pozrime sa, ako sa jednotlivé krúžkované prvky postupne používajú.
# 1) Na najhornejšej páske kliknite na druhú ikonu zľava doprava, t. J. Ikona snímky obrazovky. Na obrázku je označený ako ten, ktorý je zakrúžkovaný červenou farbou.
#dva) Aktuálnu snímku obrazovky aj súbor s výpisom používateľského rozhrania môžete uložiť pre budúce účely. Uložené súbory je možné otvoriť pomocou ikony priečinka v hornej časti.
# 3) Táto časť obsahuje všetky informácie týkajúce sa hierarchie používateľského rozhrania. Vyhľadávať môžete pomocou poskytnutého vyhľadávacieho poľa. Rozbaliť / zbaliť hierarchiu. Prechádzajte medzi objektmi pomocou šípok nahor a nadol.
# 4) „Podrobnosti uzla“ je miesto, kde získavame informácie o prvku používateľského rozhrania.
Zobrazuje všetky potrebné informácie o prvku, ako je jeho dostupnosť, viditeľnosť a rôzne vyhľadávače, ako je názov triedy, text, ID zdroja, popis obsahu atď. Pomocou ktorých potrebujeme prístup k prvku automatizovane.
Potom bude obrazovka vyzerať nasledovne.
Kliknite na prístroji na vyhľadávacie pole Google a pomocou UIAutomatorViewer urobte znova snímku obrazovky.
Na PC kliknite na zobrazené komponenty UI a sledujte. Nástroj zistí vybraný komponent a zobrazí podrobnosti o ňom. Vybraný komponent používateľského rozhrania bude zvýraznený červeno zafarbeným rámčekom na ľavej strane obrazovky.
Vzorový testovací program
Vytvorenie testovacieho projektu a triedy v Eclipse:
Otvorte Eclipse IDE na počítači a kliknite na Súbor -> Nové -> Projekt Java . Otvorí sa okno na vytvorenie projektu, zadajte názov projektu napríklad „UiAutomator_Demo“. Ponechajte všetky predvolené nastavenia tak, ako sú, a dvakrát kliknite na tlačidlo Dokončiť. Váš projekt bol teraz vytvorený.
Vytvorený projekt sa zobrazí na ľavej strane IDE. Kliknite pravým tlačidlom myši na názov projektu, kde ho musíte vybrať Nové -> Trieda a v otvorenom okne zadajte názov triedy, napríklad, DemoTest a stlačte cieľové tlačidlo.
Pridanie pohárov do projektu
Mali by sme pridať všetky knižnice, ktoré používame pri automatizácii testov.
# 1) Pravým tlačidlom myši kliknite na názov projektu v Eclipse a potom vyberte „Vlastnosti“ .
#dva) Zobrazí sa nové okno s vlastnosťami, vyberte „Cesta zostavenia Java“.
# 3) Kliknite na ponuku Knižnice a potom na ikonu „Add external jars“ tlačidlo.
# 4) Otvorí sa okno Správca súborov. Prejdite do priečinka, kde máte nainštalovanú súpravu SDK. Vyberte android.jar a uiautomator.jar a potom stlačte tlačidlo Použiť a zatvorte ďalšie okno.
V tomto teste vykonáme malú operáciu vo vyhľadávaní Google, aby sme zistili, či sa výsledky zobrazujú podľa nášho vyhľadávacieho dopytu.
Ďalej sú uvedené kroky potrebné na vykonanie týchto krokov:
- Kliknite na vyhľadávacie pole Google.
- Zadajte vyhľadávací dopyt, napríklad, Pomocník na testovanie softvéru
- Stlačte tlačidlo Enter a skontrolujte, či výsledky obsahujú odkaz na webovú stránku Pomocníka pre testovanie softvéru
Toto sú kroky, ktoré vykonávame manuálne.
Automatizujme to isté.
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(); } }
Pozrime sa na vyššie uvedený úryvok kódu.
Importovali sme všetky požadované moduly do nášho programu.
Krok 1 : Uloženie ID zdroja vyhľadávacieho poľa Google v UiObject a vykonanie operácie kliknutia.
Krok 2 : Zadanie textu do vyhľadávacieho poľa a stlačenie klávesu Enter
Krok 3 : Overenie, či výsledky vyhľadávania obsahujú webovú stránku Pomocníka pre testovanie softvéru. Tlač „Úspešne“ správa pre konzolu, ak požadovaný text existuje, inak vytlačte správu „Zlyhanie“.
Zoznam príkazov
# 1) Vytvorte testovací projekt
Android vytvorí uitest-project –t -p
Tento príkaz vytvorí súbor build.xml, ktorý sa bude ďalej používať na generovanie jar.
-t parameter berie verziu Androidu ako parameter. Musíte určiť, na ktorú verziu systému Android chcete zacieliť. Príklad: android-25 t.j. zameriavame sa na verziu Android 7.
Parameter -p predstavuje miesto, kde musíte spomenúť cestu k projektu. Príklad: D: Workspace UiAutomator_Demo
-n je názov projektu Príklad: UiAutomator_Demo
# 2) Vytvorte si zdrojový kód
Ako už bolo spomenuté, na zostavenie nášho zdrojového kódu a na generovanie spustiteľného súboru JAR by sme použili nástroj Apache ant ako nástroj na zostavenie.
ako tlačiť pole v opačnom poradí
Mravenec stavať
Ak v čase kompilácie nedôjde k chybe, na konzole sa zobrazí správa „Stavba je úspešná“ .
Potom nájdete spustiteľný súbor jar v priečinku am priečinok projektu s názvom zadaným v čase vykonania prvého príkazu. Ak sa vo vašom kóde vyskytnú nejaké problémy, chyby sa zobrazia na konzole a súbor JAR sa nevygeneruje.
# 3) Odovzdanie vygenerovaného súboru JAR do zariadenia
Adb push / data / local / tmp /
Príklad: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
Pretože testy UiAutomator prebiehajú na základe súboru JAR postrčeného do zariadenia, musíme najskôr natlačiť náš súbor jar do zariadenia. Použijeme na to príkaz adb push.
Tento príkaz má dva parametre - jeden je súbor, ktorý sa má odoslať do zariadenia so systémom Android, a druhý je cieľová cesta.
Druhým argumentom pre tento príkaz je cieľová cesta, kam by sa mal presunúť náš súbor. V našom prípade by to malo byť / data / local / tmp /
# 4) Spustite test
Teraz máme všetko pripravené. Jediná vec, ktorá čaká, je vykonať náš test.
Najbohatší uiautomator adb shell –c
Príklad: adb shell uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Ak neviete, ako získať kvalifikovaný názov triedy, postupujte podľa nasledujúcich pokynov:
V Eclipse kliknite na rozbaľovaciu ponuku projektu a prejdite na triedu, kde je váš testovací kód. Triedou je DemoTest. Pravým tlačidlom myši kliknite na názov triedy. Otvorí sa okno, kliknite na ikonu „Kopírovať kvalifikovaný názov“ .
Hneď ako na príkazový riadok kliknete na tento príkaz, test sa začne vykonávať a teraz môžete vidieť, ako sa test v prístroji vykonáva.
Časté otázky
Otázka č. 1) Je nastavenie cesty pre SDK povinné?
Odpoveď: Nie, ale je vhodné nastaviť cestu, pretože ak nenastavíte cestu SDK v premenných prostredia, máte prístup iba k súborom v umiestnení, kde je nainštalovaná.
Takže pre prístup k vašej SDK kdekoľvek potrebujete nastaviť cestu. Nielen pre SDK, ale je tiež vhodné postupovať rovnako pre Java a ant.
Otázka č. 2) Prečo UIAutomatorViewer zobrazuje chybu pri snímaní snímky obrazovky?
Odpoveď:
Existujú 3 možné dôvody:
# 1) Adb nerozpoznal vaše zariadenie a musíte aktualizovať softvér ovládača zariadenia. Môžete ich vyhľadať online a nainštalovať, napríklad, ak pracujete so zariadením LG, môžete vyhľadať ovládače adb LG.
#dva) Vaše zariadenie nie je v pokojovom stave: Uiautomatorviewer, ktorý nie je statický, napríklad pri prehrávaní videa alebo pri zobrazovaní animácie, nemôže v týchto prípadoch urobiť snímku obrazovky. Uistite sa, že obrazovka zariadenia v čase snímania snímky obrazovky nezobrazuje žiadne videá ani animácie.
# 3) Nesúlad verzie Androidu: Uistite sa, že vaša verzia rozhrania SDK API je vyššia alebo rovnaká ako úroveň rozhrania API systému Android pre zariadenie. Ak nie, môžete aktualizovať SDK kliknutím na súbor android.bat alebo prostredníctvom správcu SDK.
Otázka č. 3) Existuje nejaká oficiálna dokumentácia pre UIAutomatorViewer?
Odpoveď: Áno, Google poskytol dokumentácia pre UIAutomatorViewer. Nie je síce úplne pokrytý všetkými témami, ale môže získať predstavu o tomto nástroji.
Otázka č. 4) Prečo príkaz adb devices nezobrazuje žiadne zariadenia?
Odpoveď: Skontrolujte, či sú vo vašom zariadení povolené možnosti pre vývojárov. Umožniť Možnosť vývojárov v zariadení Android postupujte podľa nižšie uvedeného postupu. Prejdite na nastavenia zariadenia a O telefóne . Klepnite päťkrát na číslo zostavy. Prípitková správa „Teraz ste vývojár“ sa zobrazí a pridá sa možnosť Nastavenia vývojára.
Otázka č. 5) Prečo je Adb stále nerozpoznal moje zariadenie?
Odpoveď: Môže sa vyskytnúť problém s ovládačom. Musíte aktualizovať ovládač, ktorý pomáha detekovať zariadenie.
Podľa nasledujúcich pokynov aktualizujte ovládač.
# 1) Otvorte svoj systém a otvorte správcu zariadenia; toto nastavenie získate kliknutím pravým tlačidlom myši Tlačidlo Štart .
#dva) Otvorte Správcu zariadení, kde nájdete názov zariadenia v zariadeniach Android / prenosných zariadeniach.
# 3) Pravým tlačidlom myši kliknite na názov zariadenia a vyberte možnosť Aktualizovať ovládače.
# 4) Kliknite na možnosť Vyhľadať softvér ovládača v mojom počítači a potom kliknite na možnosť vybrať zo zoznamu ovládačov zariadenia v mojom počítači.
# 5) Vyberte ktorýkoľvek z vhodných ovládačov, ktoré chcete nainštalovať, a stlačte ďalšie tlačidlo. Ak je ovládač zariadenia úspešne nainštalovaný, nižšie sa zobrazí správa.
# 6) Pretože sa jedná o hardvérové zmeny aplikované na váš systém, možno budete musieť reštartovať systém, ak sa zobrazí výzva.
# 7) Ak máte pocit, že zariadenie nie je rozpoznané, môžete najskôr zmeniť režimové pripojenie. Tieto režimy sa zobrazia na zariadení, keď ho pripojíte k systému.
ako vyzerá modem a router
Príklad: Prenos súborov, Prenos fotografií, MIDI1.
Otázka č. 6) Môžem zobraziť podrobnosti všetkých komponentov používateľského rozhrania aplikácie pre Android?
Odpoveď: V UIAutomatorViewer si môžete pozrieť takmer všetky súčasti používateľského rozhrania. Ak ktorékoľvek používateľské rozhranie / rozloženie používa iné ako predvolené hodnoty poskytované systémom Android, potom ich nie je možné zobraziť v nástroji UIAutomatorViewer.
Môžete požiadať svojho vývojára, aby do prvku používateľského rozhrania vložil akýkoľvek identifikátor, ktorý automatizuje túto funkciu. Napríklad, uvedenie ID zdroja, popisu obsahu atď.
Otázka č. 7) Používa v ňom nástroj Appium nástroj UIAutomator?
Odpoveď: Áno.
Otázka č. 8) Podporuje tento nástroj iné zariadenia ako Windows / iOS ako Android?
Odpoveď: Nie, toto je vyvíjané spoločnosťou Google a podporuje iba zariadenia s Androidom.
Otázka č. 9) Čo je UIautomator Android?
Odpoveď: UIAutomator je nástroj / rámec, ktorý pomáha automatizovať testovacie prípady aplikácií pre Android.
Otázka č. 10) Ako nastavíte UIAutomator?
Odpoveď: Podrobné vysvetlenie nájdete v časti Inštalácia tohto tutoriálu.
Otázka č. 11) Čo je UIAutomator v aplikácii Appium?
Odpoveď: UiAutomator je testovací rámec / nástroj poskytovaný Androidom na automatizáciu testovania aplikácií pre Android, Appium ho interne používa interne.
Otázka č. 12) Ako kontrolujete prvok v UIAutomator?
Odpoveď: Po dokončení nastavenia otvorte príkazový riadok a zadajte príkaz UIAutomatorViewer. Na vašom PC sa zobrazí okno. Pripojte mobil k počítaču a kliknite na druhú ikonu obrazovky zariadenia (výpis z uiautomátora) v hornej časti.
Po tomto zariadení sa v okne inšpektora zobrazí aktuálna obrazovka. Kliknutím na niektorý z prvkov získate informácie o danom prvku. Podrobné vysvetlenie nájdete na Skontrolujte požadovaný prvok používateľského rozhrania oddiel.
Záver
Zhrnúť,
- UIAutomatorViewer je grafický nástroj používateľského rozhrania na kontrolu vrstvy používateľského rozhrania ľubovoľnej aplikácie.
- Musíte poznať štruktúru používateľského rozhrania testovanej aplikácie, aby bolo možné jednoduchšie automatizovať interakciu používateľa vo vrstve používateľského rozhrania aplikácie.
- UIAutomator používa snímku XML a snímku obrazovky. Môžete poznať hierarchiu usporiadania.
- Na automatizáciu testov používateľského rozhrania aplikácií pre Android musíte najskôr identifikovať niektoré vyhľadávače, aby ste mohli vykonať interakciu s aplikáciou Príklad: Názov triedy, ID zdroja, text.
- Adb je súčasťou SDK, ktorá sa nazýva Android Debug Bridge.
- UIAutomatorViewer môžete otvoriť zadaním príkazu uiautomatorviewer v príkazovom riadku.
- Pretože je tento nástroj bezplatný, môže ho použiť ktokoľvek a je spoľahlivý.
Príjemné čítanie !!
Odporúčané čítanie
- Ako automatizovať webovú aplikáciu v prehliadači Chrome v zariadení Android
- Automatizujte natívnu aplikáciu na zariadení Android pomocou aplikácie Appium
- 11 najlepších automatizačných nástrojov na testovanie aplikácií pre Android (Android App Testing Tools)
- 30 najlepších nástrojov na testovanie GUI pre automatizáciu testu GUI (ZOZNAM 2021)
- Výukový program Katalon Studio: Nástroj na automatizáciu bezplatných testov, na ktorý ste čakali
- Praktická recenzia Ranorex Studio: Riešenie automatizácie testov typu všetko v jednom
- Výukový program pre automatizáciu SeeTest: Sprievodca nástrojom na automatizáciu mobilných testov
- Výukový program pre praktickú kontrolu nástroja Automation Test TestProject