Thunders exécute des cas de test sur des applications natives iOS et Android, sur de vrais appareils et sur des émulateurs, dans le même éditeur que vos tests web. Vous téléversez un build au format APK ou IPA, vous y rattachez un projet de test, puis vous écrivez les étapes en langage naturel exactement comme pour un navigateur. Les différences sont le build de l'application mobile, les appareils sur lesquels le test s'exécute, et un ensemble de paramètres d'exécution propres au téléphone.
Avant de commencer
Un build de votre application, au format
.apkpour Android ou.ipapour iOS.Un projet de test. Vous pouvez créer un Projet Mobile, ou ajouter une application mobile à un projet qui teste déjà une interface web. Consultez Applications : tester plusieurs applications dans un seul projet de test.
Un appareil sur lequel exécuter le test. Choisissez un appareil dans le sélecteur Appareil, ou créez un pool d'appareils quand vous voulez un ensemble d'appareils. Consultez Comment configurer un pool d'appareils ?
Ajouter votre application mobile
Ouvrez votre projet de test, sélectionnez Configurer, puis Applications.
Sélectionnez Nouvelle application et choisissez Application mobile.
Téléversez le build. Le champ accepte un APK ou un IPA : « Glissez-déposez ou cliquez pour parcourir un APK ou IPA ».
Enregistrez l'application.
Une fois le téléversement terminé, le build affiche sa plateforme, la version et le numéro de build lus dans le fichier, par exemple v2.4.1 (241), sa taille et la date de son téléversement. Un build que votre pipeline a téléversé avec un jeton API porte un badge CI. Pour envoyer chaque nouveau build depuis votre pipeline au lieu de le téléverser à la main, consultez CI/CD.
Un build iOS qui ne peut pas recevoir de documents affiche un avertissement : « Ce build ne peut pas recevoir de documents pendant les tests. Ajoutez UIFileSharingEnabled et LSSupportsOpeningDocumentsInPlace à Info.plist. » Les étapes qui téléversent un document dans l'application échouent sur un tel build : ajoutez donc les deux clés au fichier Info.plist de votre application, puis téléversez de nouveau le build.
Un projet de test peut contenir plusieurs applications. Une exécution mobile cible une application mobile sur un pool d'appareils : un build iOS et un build Android font donc deux exécutions et non une.
Créer un cas de test mobile
Ouvrez la liste des cas de test.
Sélectionnez Nouveau Cas de Test mobile.
Choisissez l'application mobile sur laquelle le cas de test doit s'exécuter. L'éditeur la demande avant de vous laisser lancer l'exécution.
Écrivez les étapes en langage naturel, comme pour un test web.
Pour une action de l'appareil, ajoutez une Étape mobile et choisissez l'action, par exemple Rotate Device ou Open Notification Panel. Open Notification Panel prend notifications pour ouvrir les notifications, ou quick_settings pour ouvrir les paramètres rapides, c'est-à-dire le Centre de contrôle sur iOS.
Les cas de test web et mobiles ne se mélangent pas. Un cas de test réutilisable ne peut pas être partagé entre les deux plateformes.
Enregistrer plutôt qu'écrire
L'enregistreur fonctionne sur un appareil en direct. Vous pilotez un vrai téléphone dans le navigateur : touchez, faites glisser, faites défiler et saisissez sur l'écran de l'appareil, et Thunders transforme vos gestes en étapes.
Les commandes de l'appareil vous donnent Retour, Accueil, Masquer le clavier et Faire pivoter l'appareil. La pause n'est pas disponible pour les enregistrements mobiles : enregistrez le parcours en une fois, puis ajustez les étapes ensuite.
Chaque commande de l'appareil que vous utilisez est enregistrée comme une étape. Faire pivoter l'appareil enregistre une étape telle que « Rotate the device to landscape », pour que la réexécution fasse pivoter l'appareil au même moment. Un glissement vers le bas depuis le haut de l'écran qui ouvre le panneau des notifications est enregistré comme une étape qui rouvre ce panneau à la réexécution.
Si le flux vidéo n'apparaît pas, vos gestes atteignent tout de même l'appareil. L'enregistreur le signale plutôt que d'échouer, et vous pouvez recharger le flux pour retrouver l'image.
Suivre une exécution mobile
Une exécution mobile affiche une vue en direct de l'appareil pendant qu'elle se déroule, en Portrait ou en Paysage. Basculez le mode d'aperçu entre Direct et Captures d'écran si le flux est instable sur votre connexion, et rechargez le flux s'il se fige ou devient noir.
Ensuite, le rapport d'exécution est celui que vous connaissez déjà. Consultez Consulter un rapport d'exécution de test.
Son panneau des propriétés ajoute une ligne Build de l'application avec la version du build que l'exécution a installé, et la date de téléversement de ce build au survol. Une exécution garde le build avec lequel elle a démarré, même si un nouveau build arrive pendant qu'elle se déroule.
Questions fréquentes
Comment couvrir à la fois iOS et Android ?
Exécutez chaque plateforme comme sa propre exécution mobile, puis regroupez-les dans un groupe de test pour les lancer d'un seul geste. Une exécution cible une application mobile sur un pool d'appareils, ce qui garde les résultats de chaque plateforme séparés et lisibles. Consultez Groupes de tests - Ajouter, modifier, supprimer et exécuter.
Comment organiser la couverture web et mobile ?
Gardez-les comme des cas de test distincts, puisque chaque plateforme a ses propres étapes et ses propres paramètres d'exécution. Regroupez les deux dans un même groupe de test quand vous voulez couvrir tout le produit d'un seul geste.
Comment téléverser chaque nouveau build automatiquement ?
Téléversez-le depuis votre pipeline CI avec un jeton API. Une seule requête remplace le build de l'application mobile dans un environnement, et l'exécution suivante l'installe. Consultez CI/CD.
Comment savoir quel build une exécution a testé ?
Ouvrez le rapport d'exécution. La ligne Build de l'application de son panneau des propriétés affiche la version et le numéro du build que l'exécution a installé. La ligne est absente quand le build ne déclare aucune version.
Mes tests s'exécutent-ils sur de vrais appareils ou sur des émulateurs ?
Les deux sont disponibles. Le catalogue d'appareils marque chaque appareil Physique ou Émulateur, et vous choisissez ce que contient votre pool.
Comment maîtriser l'état de l'application entre les exécutions ?
Avec le paramètre Réinitialisation de l'application : Aucune conserve les données, Complète les efface et réinstalle l'application, et Nouvelle installation désinstalle puis réinstalle depuis le build. Consultez Que puis-je configurer dans une exécution mobile ?
En combien de temps une exécution mobile démarre-t-elle ?
Souvent immédiatement. Thunders garde de vrais appareils préchauffés avec votre application mobile déjà installée et ouverte, l'exécution s'y rattache donc au lieu d'attendre qu'un téléphone soit trouvé et démarré. Le sélecteur Appareil affiche un badge Préchauffé quand l'un d'eux est prêt. Consultez Comment les appareils préchauffés démarrent-ils mes tests instantanément ?
Les exécutions mobiles coûtent-elles autant que les exécutions web ?
Les exécutions mobiles consomment des crédits comme toute autre exécution. Consultez Consommation de crédits après votre première semaine pour voir à quoi ressemble votre usage.


