Il y a 2 façons d'obtenir les caractéristiques des éléments d'une vue :
Dump : fichier de la structure de la vue
UIAutomatorViewer : utilise le fichier dump pour afficher la hiérarchie de la vue directement sur une capture d'écran.
Dump
Le fichier dump permet de voir toute la hiérarchie d'une vue.
Il est généré automatiquement à la fin du test dans vos fichiers :dossier-projet/greenspector/dd-mm-yyyy/tests-results/nom-app/parcours/iteration X/dump/dump.uix
Il correspond au dump du dernier écran. S'il s'agit d'un succès, c'est le dump de la dernière étape du parcours. S'il s'agit d'un test échoué, c'est le dump de l'écran où l'erreur s'est produite.
Il est possible d'obtenir le dump de l'écran souhaité via la commande suivante dans un terminal :
testrunner testdslcommand -c “dump”
Il sera stocké au même endroit que les autres résultats.
Il peut être ouvert dans VSCode ou un autre éditeur de texte pour rechercher les caractéristiques des éléments souhaités, mais aussi réutilisé dans UIAutomatorViewer.
UIAutomatorViewer
UI Automator Viewer réalise des captures d'écran Android spéciales, qui contiennent non seulement une image de l'écran, mais aussi une hiérarchie de la mise en page.
Connecter l’appareil en adb
Ouvrir UIAutomatorViewer
La 1ère icône ouvre une capture d'écran et son dump associé. A utiliser en cas d'échec d'une itération, qui sont présentes dans un dossier de la forme
greenspector/dd-mm-YYYY HHhMMm/tests-results/suite/scripte/iteration x/
.La deuxième icône permet de visualiser les informations sur les éléments et le vidage de la vue directement à partir du smartphone connecté à adb.
Une capture d'écran et un dump de la hiérarchie de la mise en page apparaissent à l'écran.
Sur la capture d'écran (à gauche), sélectionnez l'élément pour lequel vous souhaitez obtenir des informations et trouvez-le sur la droite :
Dans ce cas, l'onglet "Actu" contient le champ
text
rempli avec Actu. Ainsi, dans GDSL, nous pouvons rechercher le texte Actu pour trouver cet onglet (s'il n'y a pas d'autre élément avec le même texte dans l'écran).Chaque élément d'une vue peut être récupéré par le champ
text
,resource-id
,class
orcontent-desc
. Les commandes GDSL permettent de trouver un élément en cherchant dans ce champ.clickById,exempleid
: clique sur un élément qui a exempleid dans son champresource-id
waitUntilText,Actu
: Attendre un élément qui a Actu dans son champtext
Si l'élément recherché n'a pas d'informations renseignées, veuillez vérifier Méthodes de recherche pour accéder à l'élément recherché par le chemin des éléments dans le dump de la vue.
Si les options précédentes (text, id, search methods, etc.) ne fonctionnent pas, les éléments peuvent être cliqués par exemple par leurs coordonnées. Pour connaître la position exacte, placez le curseur sur l'élément et regardez en haut à droite de la fenêtre
N'essayez pas de copier-coller les coordonnées, elles seront également modifiées.