uiautomatorviewer tutorial
Acest tutorial explică cum să descărcați, să instalați și să configurați UIAutomator și cum să utilizați UIAutomatorViewer pentru a inspecta elementul aplicației Android:
Google a furnizat propriile instrumente de automatizare a testelor Android, iar UIAutomatorviewer este unul dintre ele. Dacă aveți o idee despre Seleniu, atunci vă va fi ușor să înțelegeți UIAutomator.
Acest tutorial vă va oferi o explicație detaliată a UIAutomator împreună cu instalarea, configurația, componentele, comenzile, programul de probă de probă și câteva dintre întrebările frecvente frecvente.
Să explorăm !!
cum să declarați o listă legată în java
Ce veți învăța:
Ce este UIAutomatorViewer?
UIAutomatorViewer vine ca o parte a managerului SDK Android și este un instrument GUI (interfață grafică pentru utilizator) care ne ajută să inspectăm elementele UI ale unei aplicații Android.
Inspectarea unei aplicații este importantă, deoarece avem nevoie de localizatori, cum ar fi ID-urile resurselor, clasa, textul unei componente ale aplicației Android pentru a automatiza aplicația.
O captură de ecran XML a ecranului curent va fi realizată de UIAutomatorViewer. Făcând clic pe orice element de pe ecran, putem afla despre clasa care este folosită pentru a reprezenta, elementul de pe ecran împreună cu toate proprietățile enumerate în partea dreaptă a instrumentului.
Ierarhia obiectelor este ordinea obiectelor în care sunt definite. De exemplu ,o clasă este un copil al altei clase. Este plasat în partea din dreapta sus a instrumentului.
Folosind UIAutomator puteți scrie cazuri de test de automatizare pentru aplicații Android. Aceste teste vor fi efectuate pe stratul UI al aplicației. Puteți simula fiecare acțiune pe care un tester o face manual, de exemplu , verificarea autentificării.
Instalare
Puteți instala acest instrument în două moduri.
# 1) Android Studio
Dacă lucrați frecvent cu testarea / dezvoltarea aplicațiilor Android, puteți instala Android Studio.
Are toate instrumentele Build, platform și SDK. Deci, instalând Android Studio, veți obține toate instrumentele cu el. Este sugerat să mergeți pentru Android Studio numai dacă aveți un laptop / PC bun. Deoarece este nevoie de memorie RAM considerabilă pe computer și are nevoie de date de 4-5 GB pentru a descărca și instala toate cerințele. Dar veți obține totul cu un singur clic.
# 2) Numai instrumente din linia de comandă
Dacă aveți nevoie doar de instrumente legate de testare, atunci puteți descărca doar managerul SDK Android.
În acest tutorial, urmăm a doua metodă, deoarece prima metodă este destul de simplă.
Deschide asta URL și derulați în jos până la antet Numai instrumente de linie de comandă, apoi faceți clic pe linkul de fișier de descărcare adecvat pe baza sistemului de operare al mașinii. Vedeți captura de ecran de mai jos pentru referință.
Pentru a rula un program, trebuie să avem instrumente SDK pentru Android, instrumente pentru platforme, platforme și instrumente de construire.
- Deschis instrumente și faceți clic pe instrumente de platformă conectați și descărcați fișierele.
- Creați un folder numit AndroidSDK și extrageți instrumentele descărcate și instrumentele de platformă aici.
- În interiorul instrumentelor, veți găsi un android.bat folder, faceți clic sau rulați fișierul bat și va fi afișată fereastra Android SDK Manager. Selectați versiunea de platformă necesară, de exemplu, Android 25 asociat și faceți clic pe instalare. Trebuie să selectați platforme și să creați instrumente pentru versiunea necesară a API-ului Android.
- Acceptați termenii și condițiile. Descărcați și instalați platforme și creați instrumente. Asigurați-vă că toate fișierele necesare se află în folderul AndroidSDK.
Împreună cu Android SDK, mai avem nevoie de câteva lucruri, așa cum se menționează mai jos.
Instrument pentru furnici:
Instrumentul Apache va fi folosit pentru a compila și construi un cod scris. Folosind instrumentul Ant, putem genera un fișier JAR care este un fișier Java Archive. Folosind fișierul jar, se vor executa suita de automatizare / cazuri de testare.
=> Instalați Apache ant Aici
Eclipse IDE și Java:
Sperăm că trebuie să aveți Eclipse IDE și editor pentru a construi codul și Java instalate pe computerul dvs. Dacă nu, vă rugăm să instalați cea mai recentă versiune de Eclipse de la Aici
Avem nevoie de un limbaj pentru a scrie testele noastre de automatizare și folosim Java pentru a automatiza testele noastre.
= > Instalați Java Aici
Configurare
Următorul lucru pe care trebuie să-l facem este să adăugăm o variabilă de mediu pentru managerul SDK. Puteți utiliza acest instrument fără a adăuga și variabila de mediu, dar problema este că nu îl puteți folosi oriunde în sistem.
Îl veți putea accesa numai în folderul în care l-ați instalat. Deci, mai bine adăugăm variabile de mediu pentru ca SDK să îl acceseze oriunde. Acum creați variabile de mediu pentru Ant, SDK Android și pentru Java. Adăugați-le pe toate la variabila cale.
Pentru a face acest lucru, navigați la Sistem -> Setări avansate de sistem -> Filă avansată -> Variabile de mediu -> Faceți clic pe Nou în secțiunea Variabile de sistem. Această navigare poate diferi de la sistem la sistem.
Exemplu de variabilă de sistem pentru căi:
ANDROID_HOME: F: Workspace SDK
ANT_HOME: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Acum adăugați toate aceste variabile de sistem la cale așa cum se arată în exemplul de mai jos.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Loveste aplica butonul și apoi butonul Bine buton.
Acum avem toate setările pregătite.
Înainte de a începe codul nostru, trebuie mai întâi să ne asigurăm că dispozitivul Android este gata să execute teste pe acesta. Pentru aceasta, trebuie să activăm opțiunile pentru dezvoltatori, dacă nu sunt încă activate.
Activarea opțiunilor pentru dezvoltatori în Android:
- Deschideți setările telefonului și navigați la 'Sistem' și apoi la 'Despre telefon' secțiune.
- Acolo veți găsi „Număr de construcție” .
- Apăsați pe Build number de cinci ori.
- Opțiunea pentru dezvoltator va fi activată și o puteți vedea în 'Sistem' .
- Deschideți opțiunile pentru dezvoltatori și activați 'Depanare USB' și „Verificați aplicațiile prin USB” .
Cum să inspectați elementele UI pe Android
Deschideți promptul de comandă oriunde și introduceți comanda uiautomatorviewer. Rețineți că nu există spații în comandă și este doar un singur cuvânt. Dacă ați configurat corect SDK-ul, atunci veți deschide o fereastră UIAutomator. În caz contrar, verificați dacă instalarea și configurarea sunt realizate corect.
Să vedem utilizarea fiecărui element încercuit unul câte unul.
# 1) În cea mai de sus panglică, faceți clic pe a doua pictogramă de la stânga la dreapta, adică pictograma de captură de ecran. În imaginea afișată, este marcată ca cea care este încercuită cu roșu.
#Două) Puteți salva captura de ecran curentă, precum și fișierul de descărcare UI în scopuri viitoare. Fișierele salvate pot fi deschise folosind pictograma folder din partea de sus.
# 3) Această secțiune conține toate informațiile legate de ierarhia UI. Puteți căuta folosind caseta de căutare furnizată. Extindeți / restrângeți ierarhia. Treceți între obiecte folosind săgețile sus și jos.
# 4) „Detalii nod” este locul în care obținem informații despre un element UI.
Afișează toate informațiile necesare despre element, cum ar fi accesibilitatea, vizibilitatea și diferitele localizatoare, cum ar fi numele clasei, textul, ID-ul resursei, descrierea conținutului, etc.
După aceea, ecranul va arăta așa cum se arată mai jos.
Faceți clic pe caseta de căutare Google de pe dispozitiv și faceți din nou o captură de ecran folosind UIAutomatorViewer.
Pe computer faceți clic pe componentele UI afișate și observați. Instrumentul detectează componenta pe care o selectați și afișează detaliile componentei. Componenta UI selectată va fi evidențiată cu o casetă de culoare roșie în partea stângă a ecranului.
Program de testare
Crearea unui proiect și a unei clase de testare în Eclipse:
Deschideți Eclipse IDE pe computer și faceți clic pe Fișier -> Nou -> Proiect Java . Se va deschide o fereastră de creare a proiectului, introduceți numele proiectului de exemplu „UiAutomator_Demo”. Lăsați toate setările implicite așa cum este și faceți clic pe butonul de finisare de două ori. Acum proiectul dvs. a fost creat.
Proiectul creat va fi afișat în partea stângă a IDE. Faceți clic dreapta pe numele proiectului unde trebuie să selectați Nou -> Clasa și pe fereastra deschisă pentru a introduce numele clasei, de exemplu, DemoTest și apăsați butonul de finalizare.
Adăugarea de borcane la proiect
Ar trebui să adăugăm toate bibliotecile pe care le folosim în timpul automatizării testelor.
# 1) Faceți clic dreapta pe numele proiectului în Eclipse și apoi selectați „Proprietăți” .
#Două) Se va afișa o fereastră nouă cu proprietăți, selectați „Calea de construire Java”.
# 3) Faceți clic pe meniul Biblioteci și faceți clic pe „Adăugați borcane externe” buton.
# 4) Se va deschide fereastra Manager fișiere. Navigați la folderul în care ați instalat SDK. Selectați android.jar și uiautomator.jar apoi apăsați butonul Aplicare și închideți fereastra suplimentară.
În acest test, vom efectua o mică operațiune în căutarea Google pentru a vedea dacă rezultatele sunt afișate conform interogării noastre de căutare.
Mai jos sunt pașii implicați pentru a efectua pașii:
- Faceți clic pe caseta de căutare Google.
- Introduceți o interogare de căutare, de exemplu, Ajutor pentru testarea software-ului
- Apăsați butonul de intrare și verificați dacă rezultatele conțin link-ul site-ului Web Ajutor pentru testarea software-ului
Deci, aceștia sunt pașii pe care îi executăm manual.
Să automatizăm același lucru.
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(); } }
Să explorăm fragmentul de cod de mai sus.
Am importat toate modulele necesare în programul nostru.
Pasul 1 : Stocarea id-ului resursei casetei de căutare Google într-un UiObject și efectuarea clicului Operațiune.
Pasul 2 : Introducerea textului în caseta de căutare și apăsarea Enter
Pasul 3 : Verificarea dacă rezultatele căutării conțin site-ul Web Ajutor pentru testarea software-ului. Imprimare 'A trecut' mesaj pentru consolă dacă există textul dorit, altfel tipăriți mesajul „Eșuat”.
Lista comenzilor
# 1) Creați un proiect de testare
Android creează uitest-project –t -p
Această comandă creează un fișier build.xml care va fi utilizat în continuare pentru generarea Jar.
-t parametru ia versiunea Android ca parametru. Trebuie să specificați ce versiune de Android vizați pentru a testa. Exemplu: Android-25, adică vizăm versiunea Android 7.
-p parametru este locul în care trebuie să menționați calea dvs. pentru proiect. Exemplu: D: Workspace UiAutomator_Demo
-n este numele proiectului Exemplu: UiAutomator_Demo
# 2) Construiți-vă codul sursă
Așa cum am menționat anterior, am folosi Apache ant ca instrument de compilare pentru a compila codul nostru sursă și pentru a genera un fișier JAR executabil.
Construcția furnicilor
Dacă nu există nicio eroare la momentul compilării, un mesaj va fi afișat pe consolă „Construirea are succes” .
Apoi, puteți găsi fișierul jar executabil în a.m folderul proiectului dvs. cu numele specificat în momentul executării primei comenzi. Dacă există probleme în codul dvs., atunci erorile vor fi afișate pe consolă și fișierul JAR nu va fi generat.
# 3) Împingerea fișierului JAR generat pe dispozitiv
Adb push / data / local / tmp /
Exemplu: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
Pe măsură ce testele UiAutomator rulează pe baza fișierului JAR împins pe dispozitiv, trebuie mai întâi să împingem fișierul nostru jar pe dispozitiv. Pentru aceasta, vom folosi comanda push adb.
Această comandă ia doi parametri - unul este fișierul care trebuie împins pe dispozitivul Android și celălalt este calea de destinație.
convertiți caracterul în întreg c ++
Al doilea argument pentru această comandă este calea de destinație unde ar trebui să fie împins fișierul nostru. În cazul nostru ar trebui să fie / data / local / tmp /
# 4) Rulați testul
Acum, avem totul gata. Singurul lucru în așteptare este să ne executăm testul.
Adb shell uiautomator runtest –c
Exemplu: adb shell uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Dacă nu știți cum să obțineți numele calificat din clasă, urmați procesul de mai jos:
În Eclipse, faceți clic pe meniul derulant al proiectului dvs. și accesați clasa în care este prezent codul de testare. Aici clasa este DemoTest. Faceți clic dreapta pe numele clasei. Se va deschide o fereastră, faceți clic pe „Copiați numele calificat” .
De îndată ce ați apăsat această comandă în promptul de comandă, testul va începe să se execute și acum puteți vedea testul efectuat pe dispozitiv.
Întrebări frecvente
Q # 1) Este obligatorie setarea căii pentru SDK?
Răspuns: Nu, dar este recomandabil să setați calea, deoarece dacă nu setați calea SDK în variabilele de mediu, atunci puteți accesa fișiere numai în locația în care este instalat.
Deci, pentru a accesa SDK-ul dvs. oriunde trebuie să setați calea. Nu numai pentru SDK, dar este recomandabil să urmați același lucru și pentru Java și ant.
Q # 2) De ce UIAutomatorViewer afișează erori în timp ce face o captură de ecran?
Răspuns:
Există 3 motive posibile pentru aceasta:
# 1) Adb nu v-a recunoscut dispozitivul și trebuie să actualizați software-ul driverului de dispozitiv. Le puteți căuta online și le puteți instala, de exemplu, dacă lucrați cu un dispozitiv LG, atunci puteți căuta drivere LG adb.
#Două) Dispozitivul dvs. nu este în stare de repaus: Pentru ecranul care nu este static, cum ar fi redarea videoclipului sau afișarea oricărei animații, uiautomatorviewer nu poate face o captură de ecran în aceste cazuri. Deci, asigurați-vă că ecranul dispozitivului dvs. nu afișează niciun videoclip / animație în momentul realizării unei capturi de ecran.
# 3) Nepotrivirea versiunii Android: Asigurați-vă că versiunea api SDK este mai mare sau egală cu nivelul API al versiunii Android a dispozitivului. Dacă nu, puteți actualiza SDK făcând clic pe fișierul android.bat sau prin managerul SDK.
Q # 3) Există vreo documentație oficială pentru UIAutomatorViewer?
Răspuns: Da, Google a furnizat documentație pentru UIAutomatorViewer. Deși nu este pe deplin acoperit pe toate subiectele, dar vă puteți face o idee despre acest instrument.
Q # 4) De ce comanda dispozitivelor adb nu afișează niciun dispozitiv?
Răspuns: Verificați dacă opțiunile pentru dezvoltatori sunt activate pe dispozitivul dvs. Pentru a permite Opțiunea dezvoltatorilor pe dispozitivul Android, urmați procesul de mai jos. Accesați setările dispozitivului și Despre telefon . Atingeți de 5 ori pe numărul de construcție. Un mesaj toast „Acum ești dezvoltator” va fi afișat și va fi adăugată opțiunea Setări dezvoltator.
Q # 5) De ce este Adb încă nu mi-a recunoscut dispozitivul?
Răspuns: S-ar putea să existe o problemă cu șoferul. Trebuie să actualizați driverul care ajută la detectarea dispozitivului.
Urmați pașii de mai jos pentru a actualiza driverul.
# 1) Deschideți sistemul și deschideți managerul de dispozitive; puteți obține această setare făcând clic dreapta Butonul de start .
#Două) Deschideți Manager dispozitive, acolo puteți găsi numele dispozitivului dvs. pe dispozitive Android / dispozitive portabile.
# 3) Faceți clic dreapta pe numele dispozitivului și selectați Actualizare drivere.
# 4) Faceți clic pe opțiunea Căutare computer pentru software-ul driverului și faceți clic pe permiteți-mi să aleg dintr-o listă de drivere de dispozitiv de pe computer.
# 5) Selectați oricare dintre driverele potrivite pentru instalare și apăsați butonul următor. Dacă driverul de dispozitiv este instalat cu succes, un mesaj va fi afișat mai jos.
# 6) Deoarece acestea sunt modificări hardware aplicate sistemului dvs., poate fi necesar să reporniți sistemul dacă vi se solicită acest lucru.
# 7) Dacă credeți că dispozitivul nu este recunoscut, atunci puteți schimba mai întâi conexiunea de mod. Aceste moduri sunt afișate pe dispozitiv atunci când vă conectați dispozitivul la sistem.
Exemplu: Transferați fișiere, transferați fotografii, MIDI1.
Q # 6) Pot vedea fiecare detaliu al componentei UI a unei aplicații Android?
Răspuns: Puteți vedea aproape toate detaliile componentelor UI în UIAutomatorViewer. Dacă orice IU / Aspect folosește altele decât valorile implicite furnizate de Android, atunci acestea nu pot fi vizualizate în instrumentul UIAutomatorViewer.
Puteți cere dezvoltatorului dvs. să pună orice identificator în elementul UI pentru a automatiza caracteristica. De exemplu, punerea unui id de resursă, descrierea conținutului etc.
Q # 7) Instrumentul Appium folosește instrumentul UIAutomator în el?
Răspuns: Da.
Q # 8) Acest instrument acceptă alte dispozitive precum Windows / iOS decât Android?
Răspuns: Nu, acesta este dezvoltat de Google și acceptă numai dispozitive Android.
Q # 9) Ce este UIautomator Android?
Răspuns: UIAutomator este un instrument / cadru care ajută la automatizarea cazurilor de testare a aplicațiilor Android.
Q # 10) Cum configurați UIAutomator?
Răspuns: Vă rugăm să consultați secțiunea Instalare a acestui tutorial pentru o explicație detaliată.
Q # 11) Ce este UIAutomator în Appium?
Răspuns: UiAutomator este un cadru / instrument de testare furnizat de Android pentru automatizarea testării aplicațiilor Android, Appium îl folosește intern.
Q # 12) Cum inspectați un element în UIAutomator?
Răspuns: După ce ați terminat configurarea, deschideți un prompt de comandă și introduceți comanda UIAutomatorViewer. O fereastră va fi afișată pe computer. Conectați telefonul mobil la PC și faceți clic pe a doua pictogramă a ecranului dispozitivului (uiautomator dump) din partea de sus.
cum se deschid fișiere dat în Windows
După acel dispozitiv, ecranul curent va fi afișat pe fereastra inspectorului. Faceți clic pe oricare dintre elemente pentru a obține informații despre acel element. Pentru o explicație detaliată, consultați Inspectați elementul UI necesar secțiune.
Concluzie
A rezuma,
- UIAutomatorViewer este un instrument grafic de interfață cu utilizatorul pentru a inspecta stratul UI al oricărei aplicații.
- Trebuie să cunoașteți structura interfeței de utilizare a unei aplicații supuse testului, astfel încât să fie mai ușor să automatizați interacțiunea cu utilizatorul în stratul de interfață al aplicației.
- UIAutomator utilizează un instantaneu XML și o captură de ecran. Puteți cunoaște ierarhia aspectului.
- Pentru automatizarea testelor UI ale aplicațiilor Android, trebuie mai întâi să identificați câteva localizatoare pentru a efectua o interacțiune cu aplicația Exemplu: Numele clasei, ID-ul resursei, textul.
- Adb este o parte din SDK care se numește Android Debug Bridge.
- Puteți deschide UIAutomatorViewer introducând comanda uiautomatorviewer în linia de comandă.
- Deoarece acest instrument este gratuit, poate fi folosit de oricine și este fiabil.
Lectura placuta!!
Lectură recomandată
- Cum se automatizează aplicația web pe browserul Chrome pe dispozitivul Android
- Automatizați aplicația nativă pe dispozitivul Android utilizând Appium
- Cele mai bune 11 instrumente de automatizare pentru testarea aplicațiilor Android (instrumente de testare a aplicațiilor Android)
- Cele mai bune 30 de instrumente de testare GUI pentru automatizarea testelor GUI (LISTA 2021)
- Tutorial Katalon Studio: un instrument gratuit de automatizare a testelor pe care l-ați așteptat
- Ranorex Studio Hands-on Review: soluție de automatizare a testului all-in-one
- Vedeți tutorialul de automatizare a testelor: un ghid al instrumentului de automatizare a testelor mobile
- Instrumentul de automatizare a testelor TestProject Tutorial de examinare practică