Utilisez le robot d'exploration d'applications, qui fait partie de Jetpack, pour tester automatiquement votre application sans avoir à écrire ni à gérer de code.
Le robot d'exploration s'exécute aux côtés de votre application et émet automatiquement des actions (par exemple, appui, balayage, etc.) pour explorer l'espace d'état de votre application. L'exploration s'arrête automatiquement lorsqu'il n'y a plus d'actions uniques à effectuer, si l'application plante ou lorsqu'un délai d'inactivité que vous avez défini est atteint.
Les tests avec le robot d'exploration sont très simples, car il n'y a pas de code à écrire ni à gérer. De plus, vous pouvez l'exécuter sur divers appareils pour rechercher des plantages, des problèmes visuels ou des problèmes de performances. En règle générale, il est recommandé d'utiliser un service cloud tel que Firebase Test Lab pour tester plus facilement et plus rapidement plusieurs combinaisons de tailles d'écran et de configurations matérielles.
Audience cible
Le robot d'exploration d'applications cible les développeurs qui souhaitent garantir les fonctionnalités de base de leur application avec une configuration minimale. En plus des tests purement opaques, le robot d'exploration peut également être configuré pour fournir des entrées spécifiques, par exemple des identifiants de connexion ou des liens profonds.
Premiers pas
Avant de commencer, vérifiez que vous disposez d'une version récente du SDK Android. Cette application est fournie avec Android Studio. Si vous installez un SDK Android autonome, assurez-vous qu'il inclut les derniers outils de compilation et de plate-forme.
Puis, téléchargez l'archive binaire du robot d'exploration.
Ensuite, lancez un émulateur ou connectez un appareil physique à l'aide d'un câble USB. Vérifiez que l'appareil est connecté en exécutant la commande suivante :
adb devices
Pour appeler le robot d'exploration, commencez par extraire l'archive vers le répertoire de votre choix. Depuis ce répertoire, appelez le robot d'exploration à l'aide de la commande suivante :
java -jar crawl_launcher.jar --apk-file path/to/my/app.apk --android-sdk path/to/my/android/sdk
Options du robot d'exploration
Vous pouvez utiliser les options suivantes pour appeler le robot d'exploration :
Option | Description |
---|---|
--android-sdk path
|
Indique le chemin d'accès à votre SDK Android. Cet indicateur est obligatoire. |
--apk-file file
|
Indique le chemin d'accès à l'APK de votre application que le robot d'exploration installe et explore. Il s'agit d'un indicateur obligatoire si |
--app-package-name name
|
Spécifie le nom de package de votre application. Utilisez cette option lorsque votre application est déjà installée sur l'appareil et qu'aucune réinstallation n'est nécessaire. Il s'agit d'un indicateur obligatoire si |
--key-store path
|
Indique le chemin d'accès au keystore qui signe les APK de votre application et de votre robot d'exploration. Utilisez cette option lorsque votre application a besoin d'une signature spécifique pour fonctionner correctement. |
--key-store-password password
|
Spécifie le mot de passe du keystore que vous avez fourni pour l'option Cet indicateur est obligatoire si |
--timeout-sec timeout
|
Spécifie le délai d'inactivité de l'exploration, en secondes. Si le délai d'inactivité n'est pas spécifié, l'exploration s'arrête au bout de 60 secondes. |
Problèmes connus
Échec de la suppression des fichiers de signature originaux
Avant le début de l'exploration, le message d'erreur suivant peut s'afficher pour les utilisateurs de JDK 9 :
androidx.test.tools.crawler.launcher.exceptions.ApkSigningException: Failed to delete original signature files
Si vous rencontrez ce problème, nous vous recommandons d'utiliser JDK 8 ou 10+. Pour plus d'informations sur ce problème, consultez ce bug de JDK 9. Certains utilisateurs ont résolu le problème en recompilant leur APK à l'aide d'une version mise à jour d'Android Studio.
Ressources supplémentaires
Pour en savoir plus sur l'utilisation du robot d'exploration d'applications, consultez les ressources suivantes.
- Le test Robo de Firebase Test Lab contient de la documentation détaillée, ainsi que des instructions pour exécuter des tests de robot d'exploration dans le cloud.