Vous pouvez automatiser le processus de test des applications Android à l'aide de plusieurs outils de ligne de commande, de l'utilitaire Android Debug Bridge (adb) et du contrôleur USB. Le contrôleur USB permet également de mener des tests dans des environnements sécurisés.
Avant de commencer
- Installez IBM® Rational Test Workbench Web UI Tester et vérifiez que l'extension pour mobile (Extension for Mobile) est sélectionnée. Pour plus de détails, voir Installation du produit.
- Téléchargez et installez adb, qui fait partie des outils SDK Android, sur l'ordinateur exécutant le Test Workbench. La page de téléchargement en cours se trouve à l'adresse Android Studio mais le site peut changer dans l'avenir. Il n'est pas nécessaire d'installer l'Android Studio complet. Il suffit d'accéder à la section SDK Tools Only sous Other Download Options pour obtenir le programme d'installation. Assurez-vous que votre appareil est correctement configuré pour adb en exécutant la commande
adb devices.
- Pour tester des émulateurs Android, définissez une ou plusieurs configurations AVD (Android Virtual Device). Pour plus de détails,
voir Using the Emulator. Cet article décrit également des
méthodes permettant d'améliorer les performances des émulateurs par le biais d'une accélération du matériel.
- Pour effectuer des tests sur des appareils Android, activez le débogage USB en accédant à sur un appareil Android. Connectez ensuite l'appareil Android à l'aide d'un câble USB à l'ordinateur exécutant Test Workbench. Si nécessaire, procurez-vous le pilote USB correspondant à votre appareil sur http://developer.android.com/tools/extras/oem-usb.html ou accédez au site Web du fournisseur d'appareil.
- Pour effectuer des tests sur des appareils Android, vous avez également la possibilité d'utiliser le contrôleur USB, qui fournit le mode d'installation en mode silencieux sur les émulateurs et appareils Android, quel que soit le niveau d'API, et permet également de travailler dans des environnements sécurisés non dotés de l'accès Wi-Fi. Le contrôleur USB permet également de travailler dans un environnement dans lequel le Test Workbench est distant. Pour des détails,
voir Installation et configuration du client Android avec le contrôleur USB.
- Vous ne pouvez pas
exécuter un test depuis la ligne de commande sur Mac OS X.
- Enregistrez les scripts de test pour l'application à tester (AUT).
Le processus d'enregistrement de test ne peut pas être automatisé. Pour plus d'informations, voir Enregistrement de tests à partir du client de test mobile Android.
Pourquoi et quand exécuter cette tâche
Le processus d'automatisation inclut les procédures suivantes :
- Ajout des applications à tester au Test Workbench
- Installation de l'édition la plus récente de l'application à tester sur un appareil ou un émulateur Android.
- Installation du client de test mobile sur un appareil Android et démarrage de celui-ci en mode passif.
- Exécution du test à partir de la ligne de commande ou à l'aide du plug-in IBM UrbanCode Deploy
Procédure
- Ajoutez l'application à tester au Test Workbench.
Vous pouvez instrumenter l'application à tester et l'ajouter au Test Workbench en téléchargeant l'application à partir d'un appareil mobile ou d'un émulateur ou en cliquant sur l'icône Ajouter des applications à la liste
dans le Test Workbench. Pour automatiser le processus, utilisez AddAndroidApp.jar, que vous pouvez télécharger
à partir de la page d'accueil Android. Pour des détails,
voir Ajout d'applications Android au Test Workbench à partir de la ligne de commande.
L'exécution de AddAndroidApp.jar génère trois nouveaux fichiers .apk :
- I-nom apk d'origine.apk - Application prête à l'enregistrement
- R-nom apk d'origine.apk - Application prête à la lecture
- T-nom apk d'origine.apk - Moteur de test pour l'application
Pour plus de détails sur les fichiers .apk et la chaîne de génération Android, voir Comment le Test Workbench teste des applications Android.
- Utilisez adb pour installer l'édition la plus récente de l'application à tester sur l'appareil ou l'émulateur Android. Le fichier .apk prêt à la lecture et le fichier de moteur de test .apk doivent être tous les deux installés, sauf si vous activez le mode silencieux sur l'appareil ou l'émulateur. L'utilitaire adb est généralement installé dans emplacement_installation_SDK_Android\sdk\platform-tools. L'édition 21 ou ultérieure d'Android SDK Platform-tools est requise.
- Recherchez le fichier .apk prêt à la lecture et le fichier
.apk du moteur de test. A la suite de l'étape 1, ces fichiers ont été téléchargés dans un dossier local intitulé localdir.
- Exécutez les commandes suivantes à partir de la ligne de commande pour installer l'édition la plus récente de l'application à tester sur un appareil ou un émulateur Android :
adb install -r localdir/R-AUT-name.apk
adb install -r localdir/T-AUT-name.apk
- Pour installer l'application à tester sur plusieurs appareils ou émulateurs, utilisez adb install avec l'option -s (série), par exemple :
adb install -s emulator-5556 -r localdir/T-AUT-name.apk
adb install -s emulator-5556 -r localdir/R-AUT-name.apk
adb install -s emulator-5558 -r localdir/T-AUT-name.apk
adb install -s emulator-5558 -r localdir/R-AUT-name.apk
Pour plus de détails, voir Directing commands to a specific emulator or device.
- Installez le client de test mobile et démarrez-le en mode passif.
Le mode passif permet d'utiliser un script ou un fichier de commandes pour contrôler l'exécution du test
dans Test Workbench. Exécutez les commandes adb suivantes pour désinstaller une version existante du client de test mobile,
réinstaller une nouvelle version du client et définir le mode passif pour le client.
adb uninstall com.ibm.rational.test.mobile.android.client.ui
adb install "chemin_client_Eclipse/com.ibm.rational.test.mobile.android.client.ui-release.apk"
adb shell am start -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "URL_Workbench" --ez passive_mode “true”
Par exemple :
adb uninstall com.ibm.rational.test.mobile.android.client.ui
adb install "C:\Program Files\IBM\IBMIMShared\com.ibm.rational.test.mobile.android.client.ui-release.apk"
adb shell am start -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "9.44.55.666:7878" --ez passive_mode “true”
- Exécutez un test en mode de ligne de commande. Pour plus de détails sur l'exécution d'un test ou d'un planning en mode de ligne de commande, voir
Exécution d'un test ou d'une planification à partir de la ligne de commande.
Pour automatiser les tests des applications web mobiles, assurez-vous que l'enregistreur Web mobile est installé sur le client de test mobile. Si le client de test mobile est configuré pour exécuter le mode silencieux avec le contrôleur USB, l'enregistreur Web mobile sera installé automatiquement lors du démarrage de l'exécution de test. Aucune action utilisateur n'est nécessaire. Cependant, si l'installation en mode silencieux n'est pas configurée, vous devez installer l'enregistreur Web mobile en cliquant sur Gérer les applications web une seule fois dans le client de test mobile. Cela permet de lancer l'installation des deux fichiers apk requis et de remplir les conditions requises pour la lecture de test automatisée d'une application web.
Si votre test automatisé nécessite l'arrêt et le redémarrage du Test Workbench, vous pouvez activer le paramètre Ne pas quitter à la fermeture du plan de travail dans le contrôleur USB pour que ce dernier continue de s'exécuter même après la fermeture du Test Workbench. Pour plus d'informations, voir
Contrôleur USB.
Par défaut, Test Workbench sélectionne le premier appareil connecté qui répond le mieux aux exigences de
l'exécution du test (système d'exploitation Android ou API Android). Pour exécuter le
test sur un ou plusieurs appareils spécifiques, utilisez la variable de sélection d'ID
d'appareil. Pour trouver l'ID d'un appareil, ouvrez l'éditeur de appareils mobiles dans Test Workbench, sélectionnez un appareil et recherchez son ID dans Propriétés détaillées.
Vous pouvez également utiliser une variable pur sélectionner un appareil spécifique. Pour plus d'informations, voir
Définition d'une variable pour l'exécution d'un test à l'aide d'un appareil mobile sélectionné.
Tous les scripts de test sont liés à une version spécifique de l'application à tester. Si vous téléchargez une nouvelle version de l'application à tester, vous devez toujours exécuter le test sur la version la plus récente. Pour plus de détails, voir Définition d'une variable dans un test pour l'exécution de la dernière version d'une application.
Remarque : Si vous avez défini la préférence associée à la restructuration automatique des tests lorsqu'une nouvelle application est ajoutée, vous n'avez pas besoin de définir cette variable.
- Pour exécuter un test en mode ligne de commande, vous pouvez également exécuter un test à l'aide du plug-in
IBM UrbanCode Deploy pour IBM Rational Test Workbench. Pour plus de détails, voir
Test à partir d'Urban Code Deploy.