Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Après avoir défini un parcours fonctionnel, il est temps de le coder!

  • Télécharger le modèle dans Greenspector Studio/ Modules / GDSL Templates

  • Choisir le fichier approprié en fonction du projet : Web, Android

  • Déplacez-les dans un dossier du projet

  • Modifier {{.PackageName}} par le nom du package de l'application, en suivant l’exemple ci dessous:

applicationKill,com.facebook.katana
applicationStart,com.facebook.katana
 Comment récupérer le package de l'application

Pour un site web, le package est celui du navigateur: com.android.chrome

Pour les applications, 3 méthodes possibles:

  1. Se connecter par adb à l'appareil

    1. Ouvrez un terminal n'importe où et exécutez la commande suivante: adb shell pm list packages (pour avoir la liste des paquets présents sur l'appareil)

    2. Copiez et collez dans un fichier texte et recherchez par mot-clé apparenté le paquet de l'application.

  2. Aller sur le Playstore

    1. Trouver l'application à mesurer

    2. Le nom du paquet est visible dans l'url, comme dans l'exemple suivant : com.facebook.katana

  3. Avec UIAutomatorviewer

    1. Se connecter par adb

    2. Ouvrir l'application à tester

    3. Effectuez une capture d'écran dans UIAutomatorviewer à l'aide du bouton Device Screenshot

    4. Le nom du paquet est indiqué en bas à droite

Pour en savoir plus sur la structure des scripts GDSL, consultez la page suivante : Introduction au GDSL

Pour lancer l’application

  • Mesure de l'inactivité de référence sur l'écran d'accueil

  • Lancement de l'application

  • Attente de l'affichage du dernier élément (waitUntil)

measureStart,PAUSE_reference
pause,${PAUSEDURATION}
measureStop

measureStart,CHRGT_accueil
applicationStart,com.google.android.youtube
waitUntilText,Home
pause,${PAUSEAFTERLOAD}
measureStop

Pour lancer un site web :

  • Lancement du navigateur (setBrowser)

  • Préparation du navigateur en vidant le cache et l'historique (browserPrepareAndOpenForReference)

  • Mesure de l'inactivité de référence d'un onglet vide

  • Ecriture de l'URL (browserGoToUrl)

  • Mesure du chargement du site web en validant l'URL (pressEnter)

  • Attente de l'affichage du dernier élément (waitUntil)

setBrowser,chrome
applicationKill,com.android.chrome
browserPrepareAndOpenForReference

measureStart,PAUSE_referenceBrowser
pause,${PAUSEDURATION}
measureStop

browserGoToUrl,https://metropole.nantes.fr 

measureStart,CHRGT_accueil
pressEnter
waitUntilText,Tout accepter
pause,${PAUSEAFTERLOAD}
measureStop

Si, lors de l'installation, l'application affiche des fenêtres qui n'apparaissent pas dans la liste suivante

  • Solution 1 : Il est obligatoire d'automatiser ce processus si vous voulez utiliser le testbench.

  • Solution 2 : passer en mode testrunner avec dispositif local pour éviter de réinstaller l'application à chaque itération.

Pour chaque nouvelle vue/page :

  • Réalise l'action permettant de changer de vue (clickBy)

  • Attente de l'affichage du dernier élément (waitUntil)

  • Vérifie que l'élément attendu n'existe pas déjà avant de changer de vue (assertNotExists)

  • Mise en place d'une étape de pause pour mesurer l'état d'inactivité

assertNotExistsText,Profitez de vos vidéos préférées
measureStart,CHRGT_ongletBibliotheque
clickByTextExact,Bibliothèque
waitUntilTextExact,Profitez de vos vidéos préférées
pause,${PAUSEAFTERLOAD}
measureStop

measureStart,PAUSE_ongletBibliotheque
pause,${PAUSEDURATION}
measureStop

Pour obtenir les caractéristiques d'un élément dans une vue, voir Obtenir les éléments d'une vue (Android)

Pour une action (cliquer, écrire un texte, ...) ou un défilement :

  • Effectue 3 actions au maximum dans une mesure

  • Elles doivent être séparées par une pause appropriée (PAUSEAFTERACTION et PAUSEAFTERSCROLL)

Action :

measureStart,ACTION_accueil_saisieRecherche
clickByPercent,80,5
pause,${PAUSEAFTERACTION}
enterText,greenspector
pause,${PAUSEAFTERLOAD}
measureStop

Scroll :

measureStart,SCROLL_videos
swipeVertical,90,10,50
pause,${PAUSEAFTERSCROLL}
swipeVertical,10,90,50
pause,${PAUSEAFTERLOAD}
measureStop

Pour les étapes techniques finales (pertinent pour les app)

  • Retour sur la page d'accueil de l'appareil pour mesurer l'activité de l'application en arrière-plan lors d'une pause (pressHome)

  • Mesure de l'activité de l'application après la fermeture d'une pause par l'utilisateur (applicationCloseAll)

  • Mesure de l'activité de l'application après une fermeture forcée (fermeture du processus) lors d'une pause (applicationKill)

pressHome

measureStart,PAUSE_appBackground
pause,${PAUSEDURATION}
measureStop

applicationCloseAll

measureStart,PAUSE_afterUserClose
pause,${PAUSEDURATION}
measureStop

applicationKill,com.android.chrome

measureStart,PAUSE_afterForcedClose
pause,${PAUSEDURATION} 
measureStop

Pour suivre les bonnes pratiques  : Bonnes pratiques et astuces

  • No labels