MAJ 28 AOUT 2024
Pour commencer l’automatisation, nous allons personnaliser notre modèle de test sample.testgb en ajoutant une nouvelle étape d’action. Observons le fichier original :
############################################################################################ # Débuter avec le GDSL : une première analyse de www.gouvernement.fr # ############################################################################################ # Preparation # applicationKill,com.android.chrome browserPrepareAndOpenForReference pause,${PAUSEAFTERLOAD} # Blank tab reference # measureStart,PAUSE_referenceBrowser pause,${PAUSEDURATION} measureStop browserGoToUrl,https://www.gouvernement.fr/ # Loading step # assertNotExistsText,Tout accepter measureStart,CHRGT_home pressEnter waitUntilText,Tout accepter pause,${PAUSEAFTERLOAD} measureStop # Pause step # measureStart,PAUSE_home pause,${PAUSEDURATION} measureStop
Actuellement, notre test se rend sur le site du gouvernement et mesure le chargement et une pause sur la page d’accueil.
Nous allons maintenant ajouter une étape d’action pour accepter la pop-up des cookies.
Générer un dump
Après chaque test, des captures d'écran du début et de fin de chaque étape ainsi qu’un dump du dernier écran sont sauvegardés.
Pour un test sur le testbench :
Ouvrir Greenspector Core Saas et aller dans
Résultats des tests
La dernière exécution est automatiquement sélectionnée, changez si besoin
Téléchargez les fichiers en dessous de
Plus d'informations
Les fichiers sont présents dans le fichier téléchargé
.zip
:tests-results-XXXXXX.zip\tests-results\launch\parcours\iteration 1\dump\dump.uix
tests-results-XXXXXX.zip\tests-results\launch\parcours\iteration 1\screenshots\success.png
Pour un test d’un appareil en local :
Les fichiers sont présents dans le dossier
greenspector
où le testrunner a été lancé :greenspector\XX-XX-XXXX XXhXXm\tests-results\MYAPP\parcours\iteration 1\dump\dump.uix
greenspector\XX-XX-XXXX XXhXXm\tests-results\MYAPP\parcours\iteration 1\screenshots\success.png
Ouvir le dump
Ces fichiers peuvent être lus par Uiautomatorviewer:
Lancer Uiautomatorviewer dans un terminal avec :
uiautomatorviewer
UiAutomatorViewer peut créer un dump avec les boutons 2 et 3. Cependant, il n’utilise pas la même méthode que le testrunner Greenspector. Utilisez cette fonction prudemment et optez plutôt pour la manière suivante.
Cliquez sur le bouton 1 et indiquez la localisation précise des fichiers
dump.uix
etsuccess.png
précédemment identifiésTous les éléments UI détectables sont affichés
Ajouter une nouvelle étape
Pour que le parcours utilisateur et les mesures soient fiables, nous essayons au mieux de vérifier l'état de la vue avant et après une action. Avec UIAutomatorviewer, essayez de trouver les informations suivantes :
Obtenir un
text
dans la pop-up des cookiesObtenir l'
id
d’un bouton à cliquer
Dans nos nouvelles étapes, les actions suivantes seront réalisées les unes après les autres :
Vérifiez la présence de la pop-up des cookies en cherchant un texte spécifique
Si oui, cliquer sur le bouton d’acceptation
Vérifiez la disparition de la pop-up des cookies
Pour cet exemple :
Texte à vérifier :
About cookies on government.fr
Id du bouton :
slideshow-primary-12
Ajouter une nouvelle étape de chargement à la fin du fichier GDSL :
# Action step # # Vérifie l'affichage de la pop-up des cookies waitUntilText,About cookies on government.fr # Start measure measureStart,CHRGT_cookies # Clique sur bouton clickById,slideshow-primary-12 # Vérifie la disparition de la pop-up des cookies waitUntilGoneText,About cookies on government.fr # Attend la consommation résiduelle pause,${PAUSEAFTERACTION} # Stoppe la mesure measureStop
Une vue peut souvent avoir le même texte 2 fois : choisissez un text
précis et spécifique avec des instructions texte pour assurer que le bon élément soit ciblé.
Préférez la méthode d'id
dans ce cas spécial.
Essayez de relancer le test avec la méthode adaptée.
Dépannage
Si le test a échoué, une explication détaillée peut être trouvée par :
Un message d’erreur indique la ligne impliquée
failed.png
est l'équivalent desuccess.png
en cas d'échec.dump.uix
est la dernière hiérarchie UI avant la mise en échec par le testrunner. Pour obtenir un autre dump d’une étape intermédiaire, placez l’appareil sur l'étape requise et utilisez la commande suivante :
testrunner testdslcommand -c "dump"