Lancer des tests sur émulateur

5 nov 2024

Vous pouvez utiliser un émulateur Android pour vous aider à développer vos tests GDSL. Il est utile si vous ne disposez pas d'un appareil réel ou si vous voulez tester sur un appareil avec la même résolution qu'un appareil sur le testbench. N'utilisez pas l'émulateur si vous souhaitez obtenir des mesures, les métriques (énergie, données...) n'étant pas disponibles.

1 - Modification du fichier job.yml

job: extras: config-skipsetupphone: true

 

Pour pouvoir exécuter une application avec la fonction GDSL applicationStart, il y a deux possibilités :

  • Installer l'application manuellement via l'application Play Store

  • Dans le fichier job.yml, ajouter un champ url avec le nom du package de l'application. Exemple :

job: url: com.android.chrome

Dans le second cas, il installe l'application au début du test et la désinstalle à la fin.

 

2 - Modification du fichier config.yml

target: connection: usb serial: xxxx

Le champ target.serial correspond à l'identifiant de l'émulateur. Vous pouvez le trouver en exécutant « adb devices ».

 

3 - Exécution du Testrunner

  • Lancer un émulateur Android

    • Option 1 : ouvrir la fenêtre Device Manager d'Android Studio et cliquer sur le triangle

    • Option 2 : lancer un émulateur à partir de la ligne de commande (partie 2.5)

  • Si vous lancez le testrunner pour la première fois, vous devez le faire une fois sans l'option --no-update :

    • Sur Linux et macOS: ./testrunner -jobFile job.yml -config config.yml

    • Sur Windows: testrunner -jobFile job.yml -config config.yml

Sur macOS avec la puce M1, il se peut que vous deviez d'abord installer Rosetta :

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

Sur macOS avec une puce M1, il faut télécharger l'exécutable android-service avec l'architecture arm : https://dl.greenspector.com/emulator/android-service-files-mac-m1.tar.gz

  • Aller dans le cache Greenspector :

    • Sur Linux et macOS: $HOME/.greenspector

    • Sur Windows: C:\Users\[username]\.greenspector

  • Remplacer les fichiers android-service et android-service.version par les fichiers téléchargés. Vous devrez décompresser le fichier tar.gz.

  • Vous pouvez maintenant lancer le testrunner avec l'option --no-update :

    • Sur Linux et macOS: ./testrunner -jobFile job.yml -config config.yml --no-update

    • Sur Windows: testrunner -jobFile job.yml -config config.yml --no-update