uiautomatorviewer tutorial
Aquest tutorial explica com descarregar, instal·lar i configurar UIAutomator i com utilitzar UIAutomatorViewer per inspeccionar Element a l'aplicació Android:
Google ha proporcionat les seves pròpies eines d'automatització de proves d'Android i UIAutomatorviewer n'és una. Si teniu una idea sobre el seleni, us serà fàcil entendre UIAutomator.
Aquest tutorial us proporcionarà una explicació detallada de UIAutomator juntament amb la seva instal·lació, configuració, components, ordres, programa de prova de mostra i algunes de les preguntes més freqüents.
Explorem !!
on són els fitxers apk emmagatzemats a Android
Què aprendreu:
- Què és UIAutomatorViewer?
- Com inspeccionar els elements de la interfície d’usuari a Android
- Conclusió
Què és UIAutomatorViewer?
UIAutomatorViewer forma part del gestor d’SDK d’Android i és una eina d’interfície gràfica d’usuari (interface gràfica d’usuari) que ens ajuda a inspeccionar elements d’interfície d’usuari d’una aplicació per a Android.
La inspecció d’una aplicació és important ja que necessitem localitzadors com identificadors de recursos, classe, text d’un component d’aplicació Android per automatitzar l’aplicació.
UIAutomatorViewer farà una captura de pantalla XML de la pantalla actual. En fer clic a qualsevol element de la pantalla, podem conèixer la classe que s’utilitza per representar, l’element de la pantalla juntament amb totes les propietats que apareixen a la part dreta de l’eina.
La jerarquia d'objectes és l'ordre dels objectes en què es defineixen. Per exemple ,una classe és un nen d’una altra classe. Es col·loca a la part superior dreta de l'eina.
Mitjançant UIAutomator podeu escriure casos de proves d'automatització per a aplicacions d'Android. Aquestes proves es realitzaran a la capa d’interfície d’usuari de l’aplicació. Podeu simular totes i cadascuna de les accions que fa un provador manualment, per exemple , verificant l'inici de sessió.
Instal·lació
Podeu instal·lar aquesta eina de dues maneres.
# 1) Android Studio
Si treballeu amb freqüència amb proves / desenvolupament d'aplicacions d'Android, podeu instal·lar Android Studio.
Té totes les eines de compilació, plataforma i SDK. Per tant, en instal·lar Android Studio, obtindreu totes les eines amb ell. Es suggereix que opteu per Android Studio només si teniu un bon portàtil / PC. Perquè necessita una memòria RAM considerable al vostre PC i necessita dades de 4-5 GB per descarregar i instal·lar tots els requisits. Però ho obtindreu tot amb només un clic.
# 2) Només eines de línia d'ordres
Si només necessiteu eines relacionades amb les proves, només podeu descarregar l'administrador de l'SDK d'Android.
En aquest tutorial, seguim el segon mètode, ja que el primer mètode és pràcticament senzill.
Obriu això URL i desplaceu-vos cap avall fins a la capçalera Només eines de línia d'ordres, a continuació, feu clic a l'enllaç de fitxer de baixada adequat segons el sistema operatiu de la vostra màquina. Consulteu la captura de pantalla següent com a referència.
Per executar un programa, hem de tenir eines SDK per a Android, eines de plataformes, plataformes i eines de construcció.
- Obert eines i feu clic a eines de plataforma enllaçar i descarregar els fitxers.
- Creeu una carpeta anomenada AndroidSDK i extracteu les eines descarregades i les eines de la plataforma aquí.
- Dins de les eines, hi trobareu un android.bat carpeta, feu clic o executeu el fitxer bat i apareixerà la finestra del Gestor SDK d'Android. Seleccioneu la versió de plataforma necessària, per exemple, Android 25 relacionat i feu clic a Instal·la. Heu de seleccionar plataformes i crear eines per a la versió necessària de l'API d'Android.
- Accepteu els termes i condicions. Baixeu i instal·leu plataformes i eines de creació. Assegureu-vos que tots els fitxers necessaris es trobin a la carpeta AndroidSDK.
Juntament amb l'SDK d'Android, necessitem algunes coses més per començar, tal com s'esmenta a continuació.
Eina de formigues:
L'eina Apache s'utilitzarà per compilar i construir un codi escrit. Mitjançant l'eina Ant, podem generar un fitxer JAR que és un fitxer Java Archive. Mitjançant el fitxer jar, s’executaran casos d’automatització / proves.
=> Instal·leu Apache ant aquí
IDE Eclipse i Java:
Esperem que hagueu de tenir Eclipse IDE i editor per construir el nostre codi i Java instal·lats al vostre PC. Si no, instal·leu la versió més recent d’Eclipse des de aquí
Necessitem un llenguatge per escriure els nostres casos de proves d'automatització i fem servir Java per automatitzar les nostres proves.
= > Instal·leu Java aquí
Configuració
El següent que hem de fer és afegir una variable d’entorn per al gestor de l’SDK. Podeu utilitzar aquesta eina sense afegir la variable d'entorn també, però el problema és que no la podeu utilitzar a tot arreu del sistema.
Només hi podreu accedir des de la carpeta que l’heu instal·lat. Per tant, és millor que afegim variables d’entorn perquè l’SDK hi accedeixi des de qualsevol lloc. Ara creeu variables d'entorn per a Ant, SDK d'Android i Java. Afegiu-los tots a la variable camí.
Per fer-ho, aneu a Sistema -> Configuració avançada del sistema -> pestanya Avançat -> Variables d'entorn -> Feu clic a Nou a la secció Variables del sistema. Aquesta navegació pot diferir d'un sistema a un altre.
Exemple de variable de sistema per a camins:
ANDROID_HOME: F: Workspace SDK
ANT_HOME: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Ara afegiu totes aquestes variables del sistema al camí com es mostra a l'exemple següent.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Premeu el botó Aplicar i després el botó D'acord botó.
Ara tenim tota la configuració a punt.
Abans d’iniciar el codi, primer ens hem d’assegurar que el dispositiu Android estigui preparat per fer-hi proves. Per a això, hem d'activar les opcions per a desenvolupadors si encara no estan activades.
Activació de les opcions per a desenvolupadors a Android:
- Obriu la configuració del telèfon i aneu a 'Sistema' i després a 'Sobre el telèfon' secció.
- Allà hi trobareu 'Número de compilació' .
- Toqueu el número de compilació cinc vegades.
- L'opció per a desenvolupadors estarà habilitada i la podreu veure a 'Sistema' .
- Obriu les opcions de desenvolupador i activeu-les 'Depuració USB' i 'Verificar aplicacions mitjançant USB' .
Com inspeccionar els elements de la interfície d’usuari a Android
Obriu l'indicador d'ordres a qualsevol lloc i introduïu l'ordre uiautomatorviewer. Tingueu en compte que no hi ha espais a l'ordre i que només és una sola paraula. Si heu configurat correctament l’SDK, obtindreu una finestra UIAutomator. En cas contrari, comproveu si la instal·lació i la configuració es fan correctament.
Vegem l’ús de cada element encerclat un per un.
# 1) A la cinta superior, feu clic a la segona icona d'esquerra a dreta, és a dir, la icona de la captura de pantalla. A la imatge que es mostra es marca com la que està encerclada amb vermell.
# 2) Podeu desar la captura de pantalla actual i el fitxer de bolcat de la IU per a propòsits futurs. Els fitxers desats es poden obrir mitjançant la icona de carpeta que hi ha a la part superior.
# 3) Aquesta secció conté tota la informació relacionada amb la jerarquia de la IU. Podeu fer cerques mitjançant el quadre de cerca proporcionat. Amplieu / reduïu la jerarquia. Recorre els objectes mitjançant les fletxes amunt i avall.
# 4) 'Detalls del node' és el lloc on obtenim informació sobre un element de la interfície d'usuari.
Mostra tota la informació necessària sobre l'element, com ara la seva accessibilitat, visibilitat i diferents localitzadors, com ara el nom de la classe, el text, l'identificador del recurs, la descripció del contingut, etc. Utilitzant el que necessitem per accedir a l'element en automatització.
Després d'això, la pantalla es mostrarà com es mostra a continuació.
Feu clic al quadre de cerca de Google al dispositiu i torneu a fer una captura de pantalla amb UIAutomatorViewer.
Al PC feu clic als components de la interfície d’usuari que apareixen i observeu. L'eina detecta el component que seleccioneu i mostra els detalls del component. El component de la IU seleccionat es ressaltarà amb un quadre de color vermell a la part esquerra de la pantalla.
Programa de proves de mostra
Creació d'un projecte i classe de prova a Eclipse:
Obriu Eclipse IDE al vostre PC i feu clic a Fitxer -> Nou -> Projecte Java . S'obrirà una finestra de creació del projecte, introduïu el nom del projecte per exemple 'UiAutomator_Demo'. Deixeu totes les configuracions predeterminades tal com són i feu clic al botó d'acabar dues vegades. Ara s'ha creat el vostre projecte.
El projecte creat es mostrarà a la part esquerra de l’IDE. Feu clic amb el botó dret sobre el nom del projecte on heu de seleccionar Nou -> Classe i a la finestra oberta per introduir el nom de la classe, per exemple, DemoTest i prem el botó d'acabar.
Addició de pots al projecte
Hauríem d’afegir totes les biblioteques que fem servir mentre automatitzem les proves.
# 1) Feu clic amb el botó dret sobre el nom del projecte a Eclipse i seleccioneu 'Propietats' .
# 2) Es mostrarà una finestra nova amb propietats, seleccioneu 'Camí de construcció de Java'.
# 3) Feu clic al menú Biblioteques i feu clic a 'Afegiu pots externs' botó.
# 4) S'obrirà la finestra del Gestor de fitxers. Aneu a la carpeta on teniu instal·lat l'SDK. Seleccioneu android.jar i uiautomator.jar i, a continuació, premeu el botó Aplica i tanqueu la finestra addicional.
En aquesta prova, realitzarem una petita operació a la cerca de Google per veure si es mostren els resultats segons la nostra consulta de cerca.
A continuació es mostren els passos necessaris per realitzar els passos següents:
- Feu clic al quadre de cerca de Google.
- Introduïu una consulta de cerca, per exemple, Ajuda de proves de programari
- Premeu el botó d'inici i comproveu si els resultats contenen l'enllaç del lloc web Ajuda de proves de programari
Aquests són els passos que realitzem manualment.
Automatitzem el mateix.
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(); } }
Explorem el fragment de codi anterior.
Hem importat tots els mòduls necessaris al nostre programa.
Pas 1 : Emmagatzemar l'identificador de recurs del quadre de cerca de Google en un UiObject i realitzar el clic Operació.
Pas 2 : Introduint el text al quadre de cerca i prement Retorn
Pas 3 : Verificació de si els resultats de la cerca contenen el lloc web d'ajuda de proves de programari. Imprimir 'Aprovat' missatge a la consola si existeix el text desitjat; en cas contrari, imprimiu el missatge 'Error'.
Llista d'ordres
# 1) Creeu un projecte de prova
quin tipus de prova s’utilitza per verificar que el nou sistema funciona amb dades reals?
Android crea uitest-project –t -p
Aquesta ordre crea un fitxer build.xml que s'utilitzarà encara més per a la generació de Jar.
El paràmetre -t pren la versió d'Android com a paràmetre. Heu d’especificar quina versió d’Android voleu provar. Exemple: android-25, és a dir, ens orientem a la versió d'Android 7.
-p és el paràmetre on heu d'esmentar el vostre camí per al projecte. Exemple: D: Workspace UiAutomator_Demo
-n és el nom del projecte Exemple: UiAutomator_Demo
# 2) Creeu el vostre codi font
Com es va esmentar anteriorment, utilitzaríem Apache ant com a eina de compilació per compilar el nostre codi font i generar un fitxer JAR executable.
Construcció de formigues
Si no hi ha cap error en el moment de la compilació, es mostrarà un missatge a la consola 'Construir té èxit' .
A continuació, podeu trobar el fitxer jar executable a sóc carpeta del vostre projecte amb el nom especificat en el moment d’executar la primera ordre. Si hi ha algun problema al codi, els errors es mostraran a la consola i no es generarà el fitxer JAR.
# 3) Emetre el fitxer JAR generat al dispositiu
Adb push / data / local / tmp /
Exemple: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
A mesura que s’executen les proves d’UiAutomator basades en el fitxer JAR enviat al dispositiu, primer hem d’enviar el fitxer jar al dispositiu. Per a això, utilitzarem l’ordre push adb.
Aquesta ordre té dos paràmetres: un és el fitxer que s’ha d’enviar al dispositiu Android i l’altre és el camí de destinació.
El segon argument per a aquesta ordre és el camí de destinació on s’ha d’enviar el fitxer. En el nostre cas hauria de ser / data / local / tmp /
# 4) Executeu la prova
Ara, ja ho tenim tot a punt. L'únic que queda pendent és executar la nostra prova.
Adb shell uiautomator runtest –c
Exemple: adb shell uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Si no sabeu com obtenir el nom qualificat de la classe, seguiu el procés següent:
A Eclipse, feu clic al menú desplegable del vostre projecte i aneu a la classe on hi ha el codi de prova. Aquí la classe és DemoTest. Feu clic amb el botó dret sobre el nom de la classe. S'obrirà una finestra, feu clic a 'Copia el nom qualificat' .
Tan aviat com premeu aquesta ordre a l'indicador d'ordres, la prova començarà a executar-se i ara podreu veure la prova que s'està realitzant al dispositiu.
Preguntes freqüents
P # 1) És obligatori configurar el camí per a l'SDK?
Resposta: No, però és recomanable establir el camí, perquè si no definiu el camí de l'SDK a les variables d'entorn, només podreu accedir als fitxers de la ubicació on estigui instal·lat.
Per tant, per accedir al vostre SDK des de qualsevol lloc, heu d’establir el camí. No només per a l'SDK, sinó que també és recomanable seguir el mateix per a Java i ant.
Q # 2) Per què UIAutomatorViewer mostra un error en fer una captura de pantalla?
Resposta:
Hi ha tres possibles raons:
# 1) Adb no ha reconegut el vostre dispositiu i heu d'actualitzar el programari del controlador de dispositiu. Podeu cercar-los en línia i instal·lar-los, per exemple, si esteu treballant amb un dispositiu LG, podeu cercar controladors LG adb.
# 2) El dispositiu no es troba en estat d'inactivitat: Per a la pantalla que no és estàtica, com si es reprodueixi el vídeo o es mostri qualsevol animació, uiautomatorviewer no pot fer una captura de pantalla en aquests casos. Assegureu-vos que la pantalla del dispositiu no mostri cap vídeo ni animació en el moment de fer una captura de pantalla.
# 3) Desajustament de la versió d'Android: Assegureu-vos que la versió de l'API de l'SDK sigui superior o igual al nivell d'api de la versió d'Android del dispositiu. Si no, podeu actualitzar l’SDK fent clic al fitxer android.bat o mitjançant el gestor d’SDK.
Q # 3) Hi ha documentació oficial per a UIAutomatorViewer?
Resposta: Sí, Google ho ha proporcionat documentació per a UIAutomatorViewer. Tot i que no està totalment tractat sobre tots els temes, però es pot fer una idea sobre aquesta eina.
programa de còpia de seguretat gratuït per a Windows 7
Q # 4) Per què l'ordre de dispositius adb no mostra cap dispositiu?
Resposta: Comproveu si les opcions del desenvolupador estan activades al dispositiu. Per permetre Opció per a desenvolupadors al dispositiu Android, seguiu el procés següent. Aneu a la configuració del dispositiu i Quant al telèfon . Toqueu 5 vegades al número de compilació. Un missatge de pa torrat 'Ara sou un desenvolupador' es mostrarà i s'afegirà l'opció Configuració del desenvolupador.
Q # 5) Per què és així? Adb encara no heu reconegut el meu dispositiu?
Resposta: És possible que hi hagi un problema amb el controlador. Cal actualitzar el controlador que ajudi a detectar el dispositiu.
Seguiu els passos següents per actualitzar el controlador.
# 1) Obriu el sistema i obriu el gestor de dispositius; podeu obtenir aquesta configuració si feu clic amb el botó dret del ratolí Botó d'inici .
# 2) Obriu el Gestor de dispositius, allà podeu trobar el nom del dispositiu als dispositius Android / dispositius portàtils.
# 3) Feu clic amb el botó dret al nom del dispositiu i seleccioneu Actualitza els controladors.
# 4) Feu clic a Navega pel meu ordinador per obtenir l'opció de programari del controlador i feu clic a Deixa'm escollir d'una llista de controladors de dispositiu de l'ordinador.
# 5) Seleccioneu qualsevol dels controladors adequats per instal·lar i premeu el botó següent. Si el controlador de dispositiu s’ha instal·lat correctament, es mostrarà un missatge a continuació.
# 6) Com que es tracta de canvis de maquinari aplicats al vostre sistema, és possible que hàgiu de reiniciar el sistema si se us demana.
# 7) Si creieu que no es reconeix el dispositiu, primer podeu canviar la connexió de mode. Aquests modes es mostren al dispositiu quan connecteu el dispositiu al sistema.
Exemple: Transferir fitxers, transferir fotos, MIDI1.
Q # 6) Puc veure tots els detalls dels components de la interfície d’usuari d’una aplicació per a Android?
Resposta: Podeu veure gairebé tots els detalls dels components de la interfície d’usuari a UIAutomatorViewer. Si alguna interfície d’usuari / disseny utilitza altres que els valors predeterminats proporcionats per Android, no es poden visualitzar a l’eina UIAutomatorViewer.
Podeu demanar al vostre desenvolupador que posi qualsevol identificador a l'element de la IU per automatitzar la funció. Per exemple, posar un identificador de recurs, una descripció de contingut, etc.
Q # 7) L'eina Appium utilitza l'eina UIAutomator?
Resposta: Sí.
Q # 8) Aquesta eina és compatible amb altres dispositius com Windows / iOS que no siguin Android?
Resposta: No, Google ho desenvolupa i només admet dispositius Android.
Q # 9) Què és UIautomator Android?
Resposta: UIAutomator és una eina / marc que ajuda a automatitzar casos de prova d'aplicacions d'Android.
Q # 10) Com configureu UIAutomator?
Resposta: Consulteu la secció Instal·lació d’aquest tutorial per obtenir una explicació detallada.
Q # 11) Què és UIAutomator a Appium?
Resposta: UiAutomator és un marc / eina de proves proporcionat per Android per automatitzar les proves d'aplicacions d'Android; Appium les utilitza internament.
Q # 12) Com inspeccioneu un element a UIAutomator?
Resposta: Un cop hàgiu acabat la configuració, obriu un indicador d'ordres i introduïu l'ordre UIAutomatorViewer. Es mostrarà una finestra al vostre PC. Connecteu el mòbil a l'ordinador i feu clic a la segona icona de la captura de pantalla del dispositiu (uiautomator dump) a la part superior.
Després d'aquest dispositiu, la pantalla actual es mostrarà a la finestra de l'inspector. Feu clic a qualsevol dels elements per obtenir informació sobre aquest element. Consulteu una explicació detallada Inspeccioneu l'element d'interfície d'usuari requerit secció.
Conclusió
Resumir,
- UIAutomatorViewer és una eina gràfica d’interfície d’usuari per inspeccionar la capa d’interfície d’usuari de qualsevol aplicació.
- Heu de conèixer l'estructura de la interfície d'usuari d'una aplicació sotmesa a prova perquè sigui més fàcil automatitzar la interacció de l'usuari a la capa d'interfície d'usuari de l'aplicació.
- UIAutomator utilitza una instantània i una captura de pantalla XML. Podeu conèixer la jerarquia del disseny.
- Per automatitzar les proves d’interfície d’usuari de les aplicacions per a Android, primer heu d’identificar alguns localitzadors per realitzar una interacció amb l’aplicació Exemple: Nom de la classe, identificador del recurs, text.
- Adb és una part de l'SDK que s'anomena Android Debug Bridge.
- Podeu obrir UIAutomatorViewer introduint l'ordre uiautomatorviewer a la línia d'ordres.
- Com que aquesta eina és gratuïta, la pot utilitzar qualsevol i és fiable.
Bona lectura !!
Lectura recomanada
- Com automatitzar l'aplicació web al navegador Chrome en dispositius Android
- Automatitzeu l'aplicació nativa en dispositius Android mitjançant Appium
- 11 millors eines d'automatització per provar aplicacions d'Android (eines de prova d'aplicacions d'Android)
- 30 millors eines de prova de GUI per a l'automatització de proves de GUI (LLISTA 2021)
- Tutorial Katalon Studio: una eina gratuïta d'automatització de proves que heu estat esperant
- Ressenya pràctica de Ranorex Studio: solució d’automatització de proves tot en un
- SeeTest Automation Tutorial: A Mobile Test Automation Tool Guide
- Tutorial de revisió pràctica de l'eina d'automatització de proves TestProject