uiautomatorviewer tutorial
Ce didacticiel explique comment télécharger, installer et configurer UIAutomator et comment utiliser UIAutomatorViewer pour inspecter Element sur une application Android:
Google a fourni ses propres outils d'automatisation de test Android, et UIAutomatorviewer est l'un d'entre eux. Si vous avez une idée sur Selenium, il vous sera alors facile de comprendre UIAutomator.
Ce tutoriel vous donnera une explication détaillée de UIAutomator ainsi que son installation, sa configuration, ses composants, ses commandes, un exemple de programme de test et certaines des FAQ les plus fréquemment posées.
Explorons!!
quels types d'applications nous testons
Ce que vous apprendrez:
- Qu'est-ce que UIAutomatorViewer?
- Comment inspecter les éléments de l'interface utilisateur sur Android
- Conclusion
Qu'est-ce que UIAutomatorViewer?
UIAutomatorViewer fait partie du gestionnaire Android SDK et il s'agit d'un outil d'inspecteur d'interface utilisateur GUI (interface utilisateur graphique) qui nous aide à inspecter les éléments d'interface utilisateur d'une application Android.
L'inspection d'une application est importante car nous avons besoin de localisateurs tels que les ID de ressources, la classe, le texte d'un composant d'application Android pour automatiser l'application.
Une capture d'écran XML de l'écran actuel sera prise par l'UIAutomatorViewer. En cliquant sur n'importe quel élément de l'écran, nous pouvons connaître la classe utilisée pour représenter, l'élément à l'écran ainsi que toutes les propriétés répertoriées sur le côté droit de l'outil.
La hiérarchie des objets est l'ordre des objets dans lesquels ils sont définis. Par exemple ,une classe est un enfant d'une autre classe. Il est placé dans la partie supérieure droite de l'outil.
En utilisant UIAutomator, vous pouvez écrire des cas de test d'automatisation pour les applications Android. Ces tests seront effectués sur la couche UI de l'application. Vous pouvez simuler manuellement chaque action effectuée par un testeur, par exemple , vérification de la connexion.
Installation
Vous pouvez installer cet outil de deux manières.
# 1) Studio Android
Si vous travaillez fréquemment avec des tests / développement d'applications Android, vous pouvez installer Android Studio.
Il contient tous les outils de construction, de plate-forme et de SDK. Ainsi, en installant Android Studio, vous obtiendrez tous les outils avec. Il est suggéré de n'utiliser Android Studio que si vous avez un bon ordinateur portable / PC. Parce qu'il faut beaucoup de RAM sur votre PC et qu'il faut 4 à 5 Go de données pour télécharger et installer toutes les exigences. Mais vous obtiendrez tout en un seul clic.
# 2) Outils de ligne de commande uniquement
Si vous n'avez besoin que d'outils liés aux tests, vous ne pouvez télécharger que le gestionnaire du SDK Android.
Dans ce didacticiel, nous suivons la deuxième méthode car la première méthode est assez simple.
Ouvre Ceci URL et faites défiler jusqu'à l'en-tête Outils de ligne de commande uniquement, puis cliquez sur le lien de téléchargement approprié en fonction du système d'exploitation de votre machine. Voir la capture d'écran ci-dessous pour référence.
Pour exécuter un programme, nous devons disposer des outils du SDK Android, des outils de plateforme, des plateformes et des outils de construction.
- Ouvert outils et cliquez sur le outils-plateforme liez et téléchargez les fichiers.
- Créez un dossier nommé AndroidSDK et extrayez ici les outils téléchargés et les outils de plateforme.
- À l'intérieur des outils, vous trouverez un android.bat dossier, cliquez ou exécutez le fichier bat et la fenêtre Android SDK Manager s'affiche. Sélectionnez la version de plateforme souhaitée, par exemple, Android 25 lié et cliquez sur installer. Vous devez sélectionner des plates-formes et créer des outils pour la version requise de l'API Android.
- Acceptez les termes et conditions. Téléchargez et installez des plateformes et créez des outils. Assurez-vous que tous les fichiers requis se trouvent dans le dossier AndroidSDK.
En plus du SDK Android, nous avons besoin de quelques éléments supplémentaires pour commencer, comme indiqué ci-dessous.
Outil fourmi:
L'outil Apache sera utilisé pour compiler et construire un code écrit. En utilisant l'outil Ant, nous pouvons générer un fichier JAR qui est un fichier d'archive Java. En utilisant le fichier jar, la suite d'automatisation / les cas de test seront exécutés.
=> Installez Apache ant Ici
Eclipse IDE and Java:
Nous espérons que vous devez avoir Eclipse IDE et éditeur pour construire notre code et Java installé sur votre PC. Sinon, veuillez installer la dernière version d'Eclipse à partir de Ici
Nous avons besoin d'un langage pour écrire nos cas de test d'automatisation et nous utilisons Java pour automatiser nos tests.
= > Installer Java Ici
Configuration
La prochaine chose que nous devons faire est d'ajouter une variable d'environnement pour le gestionnaire de SDK. Vous pouvez également utiliser cet outil sans ajouter la variable d'environnement, mais le problème est que vous ne pouvez pas l'utiliser partout dans le système.
Vous ne pourrez y accéder que dans le dossier où vous l'avez installé. Nous ferions donc mieux d'ajouter des variables d'environnement pour que le SDK y accède n'importe où. Créez maintenant des variables d'environnement pour Ant, Android SDK et pour Java. Ajoutez-les tous à la variable de chemin.
Pour ce faire, accédez à Système -> Paramètres système avancés -> Onglet Avancé -> Variables d'environnement -> Cliquez sur Nouveau dans la section Variables système. Cette navigation peut différer d'un système à l'autre.
Exemple de variable système pour les chemins:
ANDROID_HOME: F: Workspace SDK
ANT_HOME: C: apache-ant-1.10.5
JAVA_HOME: C: Program Files Java jdk1.8.0_111
Ajoutez maintenant toutes ces variables système au chemin, comme indiqué dans l'exemple ci-dessous.
% ANDROID_HOME%;% ANT_HOME%;% JAVA_HOME%
Frapper le Appliquer puis le bouton d'accord bouton.
Maintenant, nous avons toute la configuration prête.
Avant de commencer notre code, nous devons d'abord nous assurer que l'appareil Android est prêt à exécuter des tests dessus. Pour cela, nous devons activer les options pour les développeurs si elles ne sont pas encore activées.
Activation des options de développement dans Android:
- Ouvrez les paramètres du téléphone et accédez à 'Système' puis à 'A propos du téléphone' section.
- Là vous trouverez 'Numéro de build' .
- Appuyez sur Numéro de build cinq fois.
- L'option développeur sera activée et vous pourrez la voir dans le 'Système' .
- Ouvrez les options du développeur et activez 'Débogage USB' et 'Vérifier les applications via USB' .
Comment inspecter les éléments de l'interface utilisateur sur Android
Ouvrez l'invite de commande n'importe où et entrez la commande uiautomatorviewer. Notez qu'il n'y a pas d'espaces dans la commande et qu'il ne s'agit que d'un seul mot. Si vous avez correctement configuré le SDK, vous obtiendrez une fenêtre UIAutomator ouverte. Sinon, veuillez vérifier si l'installation et la configuration sont effectuées correctement.
Voyons l’utilisation de chaque élément encerclé un par un.
#1) Au ruban supérieur, cliquez sur la deuxième icône de gauche à droite, c'est-à-dire l'icône de capture d'écran. Dans l'image montrée, il est marqué comme celui qui est entouré de rouge.
#deux) Vous pouvez enregistrer la capture d'écran actuelle ainsi que le fichier de vidage de l'interface utilisateur à des fins futures. Les fichiers enregistrés peuvent être ouverts à l'aide de l'icône de dossier en haut.
# 3) Cette section contient toutes les informations relatives à la hiérarchie de l'interface utilisateur. Vous pouvez effectuer une recherche à l'aide du champ de recherche fourni. Développez / réduisez la hiérarchie. Parcourez les objets à l'aide des flèches haut et bas.
# 4) «Détails du nœud» est l'endroit où nous obtenons des informations sur un élément de l'interface utilisateur.
Il montre toutes les informations nécessaires sur l'élément comme son accessibilité, sa visibilité et différents localisateurs tels que le nom de la classe, le texte, l'ID de la ressource, la description du contenu, etc.
Après cela, l'écran ressemblera à l'illustration ci-dessous.
Cliquez sur le champ de recherche Google sur l'appareil et prenez à nouveau une capture d'écran à l'aide de UIAutomatorViewer.
Sur PC, cliquez sur les composants de l'interface utilisateur affichés et observez. L'outil détecte le composant que vous sélectionnez et affiche les détails du composant. Le composant d'interface utilisateur sélectionné sera mis en surbrillance avec une boîte de couleur rouge sur le côté gauche de l'écran.
Exemple de programme de test
Création d'un projet et d'une classe de test dans Eclipse:
Ouvrez Eclipse IDE sur votre PC et cliquez sur Fichier -> Nouveau -> Projet Java . Une fenêtre de création de projet sera ouverte, entrez le nom du projet par exemple «UiAutomator_Demo». Laissez tous les paramètres par défaut tels quels et cliquez deux fois sur le bouton Terminer. Maintenant, votre projet a été créé.
Le projet créé sera affiché sur le côté gauche de l'EDI. Faites un clic droit sur le nom du projet où vous devez sélectionner Nouveau -> Classe et sur la fenêtre ouverte pour saisir le nom de la classe, par exemple, DemoTest et appuyez sur le bouton Terminer.
Ajout de pots au projet
Nous devrions ajouter toutes les bibliothèques que nous utilisons lors de l'automatisation des tests.
logiciel d'extraction de DVD gratuit pour Windows 10
#1) Cliquez avec le bouton droit sur le nom du projet dans Eclipse, puis sélectionnez 'Propriétés' .
#deux) Une nouvelle fenêtre avec des propriétés s'affichera, sélectionnez «Chemin de construction Java».
# 3) Cliquez sur le menu Bibliothèques et cliquez sur le 'Ajouter des pots externes' bouton.
# 4) La fenêtre du gestionnaire de fichiers s'ouvre. Accédez au dossier dans lequel le SDK est installé. Sélectionner android.jar et uiautomator.jar puis appuyez sur le bouton Appliquer et fermez la fenêtre supplémentaire.
Dans ce test, nous effectuerons une petite opération dans la recherche Google pour voir si les résultats sont affichés selon notre requête de recherche.
Voici les étapes à suivre pour effectuer les étapes:
- Cliquez sur le champ de recherche Google.
- Entrez une requête de recherche, par exemple, Aide aux tests de logiciels
- Appuyez sur le bouton Entrée et vérifiez si les résultats contiennent le lien du site Web d'aide aux tests de logiciels
Voici donc les étapes que nous effectuons manuellement.
Automatisons la même chose.
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(); } }
Explorons l'extrait de code ci-dessus.
Nous avons importé tous les modules requis dans notre programme.
Étape 1 : Stockage de l'ID de ressource du champ de recherche Google dans un UiObject et exécution de l'opération de clic.
Étape 2 : Saisir le texte dans la zone de recherche et appuyer sur Entrée
Étape 3 : Vérifier si les résultats de la recherche contiennent le site Web d'aide de Software Testing. Impression 'Réussi' message à la console si le texte souhaité existe, sinon affiche le message «Échec».
Liste des commandes
# 1) Créer un projet de test
Android crée uitest-project –t -p
Cette commande crée un fichier build.xml qui sera ensuite utilisé pour la génération Jar.
-t paramètre prend la version Android comme paramètre. Vous devez spécifier la version d'Android que vous souhaitez tester. Exemple: android-25, c'est-à-dire que nous ciblons la version Android 7.
Le paramètre -p est l'endroit où vous devez mentionner votre chemin pour le projet. Exemple: D: Workspace UiAutomator_Demo
-n est le nom du projet Exemple: UiAutomator_Demo
# 2) Construisez votre code source
Comme mentionné précédemment, nous utiliserions Apache ant comme outil de construction pour compiler notre code source et pour générer un fichier JAR exécutable.
Construction de fourmis
S'il n'y a pas d'erreur au moment de la compilation, un message sera affiché sur la console 'La construction est réussie' .
Ensuite, vous pouvez trouver le fichier jar exécutable dans le un m dossier de votre projet avec le nom spécifié au moment de l'exécution de la première commande. S'il y a des problèmes dans votre code, les erreurs seront affichées sur la console et le fichier JAR ne sera pas généré.
# 3) Pousser le fichier JAR généré vers l'appareil
Adb push / data / local / tmp /
Exemple: adb push D: Workspace UiAutomator_Demo bin UiAutomator_Demo.jar / data / local / tmp /
Au fur et à mesure que les tests UiAutomator s'exécutent sur la base du fichier JAR poussé vers l'appareil, nous devons d'abord pousser notre fichier jar vers l'appareil. Pour cela, nous utiliserons la commande adb push.
Cette commande prend deux paramètres: l'un est le fichier qui doit être poussé vers l'appareil Android et l'autre est le chemin de destination.
Le deuxième argument de cette commande est le chemin de destination où notre fichier doit être poussé. Dans notre cas, cela devrait être / data / local / tmp /
# 4) Exécutez le test
Maintenant, nous avons tout prêt. La seule chose en suspens est d'exécuter notre test.
Adb shell uiautomator runtest –c
Exemple: shell adb uiautomator runtest UiAutomator_Demo.jar –c com.android.uiautomation.DemoTest
Si vous ne savez pas comment obtenir le nom qualifié de la classe, suivez le processus ci-dessous:
Dans votre Eclipse, cliquez sur la liste déroulante de votre projet et accédez à la classe où votre code de test est présent. Ici, la classe est DemoTest. Cliquez avec le bouton droit sur le nom de la classe. Une fenêtre s'ouvrira, cliquez sur le 'Copier le nom qualifié' .
Dès que vous appuyez sur cette commande dans l'invite de commande, le test commencera à s'exécuter et vous pouvez maintenant voir le test en cours d'exécution dans l'appareil.
FAQ
Q # 1) La configuration du chemin pour le SDK est-elle obligatoire?
Répondre: Non, mais il est conseillé de définir le chemin, car si vous ne définissez pas le chemin du SDK dans les variables d'environnement, vous ne pouvez accéder aux fichiers qu'à l'emplacement où il est installé.
Ainsi, pour accéder à votre SDK n'importe où, vous devez définir le chemin. Non seulement pour le SDK, mais il est également conseillé de suivre la même chose pour Java et ant.
Q # 2) Pourquoi UIAutomatorViewer affiche une erreur lors de la prise d'une capture d'écran?
Répondre:
Il y a 3 raisons possibles à cela:
#1) Adb n'a pas reconnu votre appareil et vous devez mettre à jour le logiciel du pilote de périphérique. Vous pouvez les rechercher en ligne et les installer, par exemple, si vous travaillez avec un appareil LG, vous pouvez rechercher des pilotes LG adb.
#deux) Votre appareil n'est pas en état d'inactivité: Pour l'écran qui n'est pas statique, comme la lecture de la vidéo ou l'affichage d'une animation, uiautomatorviewer ne peut pas prendre de capture d'écran dans ces cas. Assurez-vous donc que l'écran de votre appareil n'affiche aucune vidéo / animation au moment de prendre une capture d'écran.
# 3) Incompatibilité de version d'Android: Assurez-vous que la version de l'API de votre SDK est supérieure ou égale au niveau de l'API de la version Android de l'appareil. Sinon, vous pouvez mettre à jour le SDK en cliquant sur le fichier android.bat ou via le gestionnaire de SDK.
Q # 3) Existe-t-il une documentation officielle pour UIAutomatorViewer?
Répondre: Oui, Google a fourni Documentation pour UIAutomatorViewer. Pas bien couvert sur tous les sujets, mais peut avoir une idée de cet outil.
Q # 4) Pourquoi la commande adb devices n'affiche aucun périphérique?
Répondre: Vérifiez si les options de développement sont activées sur votre appareil. Autoriser Option développeurs sur un appareil Android, suivez le processus ci-dessous. Accédez aux paramètres de l'appareil et À propos du téléphone . Tapez 5 fois sur le numéro de build. Un message toast 'Vous êtes développeur maintenant' sera affiché et l'option Paramètres du développeur sera ajoutée.
Q # 5) Pourquoi Adb n'a toujours pas reconnu mon appareil?
Répondre: Il peut y avoir un problème de pilote. Vous devez mettre à jour le pilote qui permet de détecter le périphérique.
Suivez les étapes ci-dessous pour mettre à jour le pilote.
#1) Ouvrez votre système et ouvrez le gestionnaire de périphériques; vous pouvez obtenir ce paramètre en cliquant avec le bouton droit de la souris Bouton Start .
#deux) Ouvrez le Gestionnaire de périphériques, vous pouvez y trouver le nom de votre appareil dans les appareils Android / appareils portables.
# 3) Cliquez avec le bouton droit sur le nom du périphérique et sélectionnez Mettre à jour les pilotes.
# 4) Cliquez sur l'option Parcourir mon ordinateur pour le logiciel du pilote et cliquez sur me laisser choisir parmi une liste de pilotes de périphérique sur mon ordinateur.
# 5) Sélectionnez l'un des pilotes appropriés à installer et cliquez sur le bouton suivant. Si le pilote de périphérique est correctement installé, un message s'affiche ci-dessous.
# 6) Comme il s'agit de modifications matérielles appliquées à votre système, vous devrez peut-être redémarrer le système si vous y êtes invité.
# 7) Si vous pensez que l'appareil n'est pas reconnu, vous pouvez d'abord modifier le mode de connexion. Ces modes s'affichent sur l'appareil lorsque vous connectez votre appareil au système.
Exemple: Transférer des fichiers, transférer des photos, MIDI1.
logiciel sql gratuit pour windows 10
Q # 6) Puis-je voir tous les détails des composants de l'interface utilisateur d'une application Android?
Répondre: Vous pouvez voir presque tous les détails des composants de l'interface utilisateur dans UIAutomatorViewer. Si une interface utilisateur / mise en page utilise des paramètres autres que les paramètres par défaut fournis par Android, ceux-ci ne peuvent pas être affichés dans l'outil UIAutomatorViewer.
Vous pouvez demander à votre développeur de mettre n'importe quel identifiant dans l'élément d'interface utilisateur pour automatiser la fonctionnalité. Par exemple, mettre un identifiant de ressource, une description de contenu, etc.
Q # 7) L'outil Appium utilise-t-il l'outil UIAutomator?
Répondre: Oui.
Q # 8) Cet outil prend-il en charge d'autres appareils comme Windows / iOS qu'Android?
Répondre: Non, il est développé par Google et ne prend en charge que les appareils Android.
Q # 9) Qu'est-ce que UIautomator Android?
Répondre: UIAutomator est un outil / cadre qui permet d'automatiser les cas de test d'applications Android.
Q # 10) Comment configurer UIAutomator?
Répondre: Veuillez consulter la section Installation de ce didacticiel pour une explication détaillée.
Q # 11) Qu'est-ce que UIAutomator dans Appium?
Répondre: UiAutomator est un framework / outil de test fourni par Android pour automatiser les tests d'applications Android, Appium l'utilise en interne.
Q # 12) Comment inspectez-vous un élément dans UIAutomator?
Répondre: Une fois que vous avez terminé l'installation, ouvrez une invite de commande et entrez la commande UIAutomatorViewer. Une fenêtre s'affichera sur votre PC. Connectez le mobile au PC et cliquez sur la deuxième icône de la capture d'écran de l'appareil (uiautomator dump) en haut.
Après cet appareil, l'écran actuel sera affiché dans la fenêtre de l'inspecteur. Cliquez sur l'un des éléments pour obtenir des informations sur cet élément. Pour une explication détaillée, reportez-vous Inspecter l'élément d'interface utilisateur requis section.
Conclusion
Résumer,
- UIAutomatorViewer est un outil d'interface utilisateur graphique pour inspecter la couche d'interface utilisateur de n'importe quelle application.
- Vous devez connaître la structure de l'interface utilisateur d'une application en cours de test afin qu'il soit plus facile d'automatiser l'interaction de l'utilisateur dans la couche UI de l'application
- UIAutomator utilise un instantané XML et une capture d'écran. Vous pouvez connaître la hiérarchie des mises en page.
- Pour automatiser les tests d'interface utilisateur des applications Android, vous devez d'abord identifier certains localisateurs pour effectuer une interaction avec l'application. Exemple: Nom de classe, identifiant de ressource, texte.
- Adb fait partie du SDK qui s'appelle Android Debug Bridge.
- Vous pouvez ouvrir UIAutomatorViewer en entrant la commande uiautomatorviewer dans la ligne de commande.
- Comme cet outil est gratuit, il peut être utilisé par n'importe qui et il est fiable.
Bonne lecture!!
lecture recommandée
- Comment automatiser l'application Web sur le navigateur Chrome dans un appareil Android
- Automatiser l'application native sur un appareil Android à l'aide d'Appium
- 11 meilleurs outils d'automatisation pour tester les applications Android (outils de test des applications Android)
- 30 meilleurs outils de test GUI pour l’automatisation des tests GUI [2021 LIST]
- Tutoriel Katalon Studio: Un outil d'automatisation de test gratuit que vous attendiez
- Examen pratique de Ranorex Studio: solution d'automatisation de test tout-en-un
- Tutoriel SeeTest Automation: Un guide de l'outil d'automatisation des tests mobiles
- Tutoriel de révision pratique de TestProject Test Automation Tool