Robot d'exploration d'applications

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 n'est pas spécifié.

--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 --apk-file n'est pas spécifié.

--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 --key-store.

Cet indicateur est obligatoire si --key-store est spécifié.

--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.