Un guide complet pour tester les applications mobiles avec des tutoriels approfondis:
La technologie mobile et les appareils intelligents sont la tendance actuelle et changeront l’avenir du monde tel que nous le connaissons. Nous pouvons tous en témoigner, n’est-ce pas ? Maintenant, ce serait de l’amateurisme si j’énumère ce à quoi nous utilisons ces appareils mobiles. Vous le savez tous – Peut-être mieux que nous.
Passons directement à ce dont ce tutoriel va parler.
La liste complète des 30+ tutoriels sur les tests mobiles :
Introduction aux tests mobiles :
Tutoriel n°1 : Introduction aux tests mobiles
Tutoriel n°2 : Test des applications iOS
Tutoriel n°3 : Test des applications Android
Tutoriel n°4 : Défis et solutions des tests mobiles
Tutoriel n°5 : Pourquoi les tests mobiles sont-ils difficiles ?
Test d’appareils mobiles :
Tutoriel n°6 : Tester une version Android lorsqu’elle est retirée du marché
Tutoriel n°7 : Comment tester des applications mobiles sur des appareils bas de gamme
Tutoriel n°8 : Test sur le terrain d’applications mobiles
Tutoriel n°9 : Modèle de téléphone Vs version du système d’exploitation : Lequel doit être testé en premier ?
Test de l’interface utilisateur mobile :
Tutoriel n°10 : Test de l’interface utilisateur des applications mobiles
Tutoriel n°11 : Test responsive mobile
Services de test mobile:
Tutoriel n°12 : Test d’application mobile basé sur le cloud
Tutoriel n°13 : Services de tests mobiles
Tutoriel n°14 : Services de bêta-tests d’applications mobiles
Tutoriel n°15 : Société de développement d’applications mobiles
Tutoriel n°16 : Fournisseurs de services de tests d’applications mobiles basés sur le cloud
Tests de performance et de sécurité des applications mobiles:
Tutoriel n°17 : Test de performance des applications mobiles à l’aide de BlazeMeter
Tutoriel n°18 : Directives pour les tests de sécurité des applications mobiles
Outils de tests mobiles:
Tutoriel n°19 : Outils de test d’applications Android
Tutoriel n°20 : Les meilleurs outils de test de sécurité des applications mobiles
Tutoriel n°21 : 58 meilleurs outils de test mobile
Test d’automatisation mobile:
Tutoriel n°22 : Tutoriel sur l’outil d’automatisation mobile Appium
Tutoriel n°23 : Tutoriel Appium Studio
Tutoriel n°24 : Automatisation des applications Android à l’aide de l’outil TestComplete
Tutoriel n°25 : Tutoriel Robotium – Outil de test UI des applications Android
Tutoriel n°26 : Tutoriel Selendroid : Cadre d’automatisation mobile
Tutoriel n°27 : Tutoriel pCloudy : Test d’applications mobiles sur des appareils réels
Tutoriel n°28 : Katalon Studio &Tutoriel sur la ferme d’appareils basée sur le cloud de Kobiton
Carrière dans les tests mobiles:
Tutoriel n°29 : Comment obtenir rapidement un emploi dans les tests mobiles
Tutoriel n°30 : Questions d’entrevue et curriculum vitae pour le test mobile
Tutoriel no 31 : Questions d’entrevue pour le test mobile partie 2
*************************************************************
Commençons par le 1er tutoriel de la série.
- Tutoriel n°1 : Introduction aux tests d’applications mobiles
- Types de tests mobiles
- L’importance des tests d’applications mobiles
- Différence de base entre les tests d’applications mobiles et de bureau:
- Types de tests d’applications mobiles :
- Stratégie de test des applications mobiles
- Outil recommandé
- Test Cases for Testing a Mobile App
- Activités et procédures typiques pour tester une application mobile
- Comment tester les applications mobiles sur les deux plates-formes Android et iOS
- Différence de base entre les tests Android et iOS
- Facteurs clés dans le test mobile
- Définissez votre propre portée du test
- Ne limitez pas vos tests
- Tests multiplateformes
- Gardez un œil sur la taille de votre application mobile
- Tester les scénarios de mise à niveau de l’app
- Le système d’exploitation de l’appareil peut ne pas supporter l’application
- Test de permission d’application
- Comparer avec des apps similaires et populaires sur le marché
- Donnez un aperçu du critère de rejet des builds d’Apple
- Toujours être sur le devant de la scène
- Gardez votre application en arrière-plan pendant une longue période (12-24 heures)
- Tests de performance de votre application
- Conclusion
Tutoriel n°1 : Introduction aux tests d’applications mobiles
Il est révolu le temps où le téléphone était un appareil qui trônait dans un coin et devait sonner pour attirer notre attention ou où un ordinateur était une machine que seules quelques personnes utilisaient – ils sont maintenant une extension de notre être – une fenêtre sur le monde et des serviteurs virtuels qui font ce qu’on leur dit.
Les ordinateurs ont fait fureur et ont changé la façon dont nous, les humains, pensions, nous comportions, apprenions et existions.
De nos jours, les solutions de mobilité ont envahi le marché. Les gens ne veulent pas allumer leur ordinateur portable/PC pour tout, ils veulent plutôt que leurs appareils de poche exécutent tout rapidement.
Donc les solutions mobiles que nous livrons à nos clients doivent être très bien testées. Ce tutoriel est destiné aux personnes qui sont déjà dans le domaine du test mobile ou à celles qui s’y sont mises ces derniers temps. Comme nous avons déjà de nombreux tutoriels sur les définitions des terminologies liées aux tests mobiles, nous traiterons directement de la portée de ce tutoriel.
Ce tutoriel sera à la fois une introduction et votre guide des tests mobiles. Alors, lisez-le !
Types de tests mobiles
Il y a globalement 2 types de tests qui ont lieu sur les appareils mobiles :
#1. Les tests matériels :
Le dispositif comprenant les processeurs internes, le matériel interne, les tailles d’écran, la résolution, l’espace ou la mémoire, la caméra, la radio, le Bluetooth, le WIFI, etc. Ceci est parfois appelé, simple « test de mobile ».
#2. Test de logiciels ou d’applications :
Les applications qui fonctionnent sur les appareils mobiles et leurs fonctionnalités sont testées. On l’appelle le « Test d’application mobile » pour le différencier de la méthode précédente. Même dans les applications mobiles, il existe quelques différences de base qu’il est important de comprendre :
a) Les applications natives : Une application native est créée pour être utilisée sur une plateforme comme les mobiles et les tablettes.
b) Les applications web mobiles sont des applications côté serveur pour accéder au(x) site(s) web sur le mobile en utilisant différents navigateurs comme Chrome, Firefox en se connectant à un réseau mobile ou à un réseau sans fil comme le WIFI.
c) Les applications hybrides sont des combinaisons d’applications natives et d’applications web. Elles fonctionnent sur des appareils ou hors ligne et sont écrites en utilisant des technologies web comme HTML5 et CSS.
Il y a quelques différences de base qui les distinguent :
- Les apps natives ont une affinité avec une seule plateforme tandis que les apps web mobiles ont l’affinité avec plusieurs plateformes.
- Les apps natives sont écrites dans des plateformes comme les SDK alors que les apps web mobiles sont écrites avec des technologies web comme HTML, CSS, asp.net, Java, PHP.
- Pour une app native, une installation est nécessaire mais pour les apps web mobiles, aucune installation n’est nécessaire.
- Une application native peut être mise à jour à partir du play store ou de l’app store alors que les applications web mobiles sont des mises à jour centralisées.
- Plusieurs applications natives ne nécessitent pas de connexion Internet mais pour les applications web mobiles, c’est un must.
- Une application native fonctionne plus rapidement par rapport aux applications web mobiles.
- Les applications natives sont installées à partir de magasins d’applications comme Google play store ou app store alors que les web mobiles sont des sites web et ne sont accessibles que par Internet.
Le reste de l’article va porter sur les tests d’applications mobiles.
L’importance des tests d’applications mobiles
Tester des applications sur des appareils mobiles est plus difficile que de tester des applications web sur le bureau en raison
- De différentes gammes d’appareils mobiles avec différentes tailles d’écran et des configurations matérielles comme un clavier dur, un clavier virtuel (écran tactile) et une boule de commande, etc.
- Grandes variétés d’appareils mobiles comme HTC, Samsung, Apple et Nokia.
- Différents systèmes d’exploitation mobiles comme Android, Symbian, Windows, Blackberry et IOS.
- Différentes versions du système d’exploitation comme iOS 5.x, iOS 6.x, BB5.x, BB6.x etc.
- Différents opérateurs de réseaux mobiles comme GSM et CDMA.
- Mises à jour fréquentes – (comme Android- 4.2, 4.3, 4.4, iOS-5.x, 6.x) – à chaque mise à jour, un nouveau cycle de test est recommandé pour s’assurer qu’aucune fonctionnalité de l’application n’est impactée.
Comme pour toute application, le test des applications mobiles est également très important, car la clientèle est généralement en millions pour un certain produit – et un produit avec des bugs n’est jamais apprécié. Il en résulte souvent des pertes monétaires, un problème juridique et des dommages irréparables à l’image de marque.
Différence de base entre les tests d’applications mobiles et de bureau:
Quelques aspects évidents qui distinguent les tests d’applications mobiles des tests de bureau
- Sur le bureau, l’application est testée sur une unité centrale de traitement. Sur un appareil mobile, l’application est testée sur des combinés comme Samsung, Nokia, Apple et HTC.
- La taille de l’écran de l’appareil mobile est plus petite que celle d’un ordinateur de bureau.
- Les appareils mobiles ont moins de mémoire qu’un ordinateur de bureau.
- Les mobiles utilisent des connexions réseau comme 2G, 3G, 4G ou WIFI alors que les ordinateurs de bureau utilisent des connexions à large bande ou par ligne commutée.
- L’outil d’automatisation utilisé pour les tests d’applications de bureau pourrait ne pas fonctionner sur les applications mobiles.
Types de tests d’applications mobiles :
Pour aborder tous les aspects techniques ci-dessus, les types de tests suivants sont effectués sur les applications mobiles.
- Test d’utilisabilité- Pour s’assurer que l’application mobile est facile à utiliser et fournit une expérience utilisateur satisfaisante aux clients
- Test de compatibilité- Test de l’application dans différents appareils mobiles, navigateurs, tailles d’écran et versions d’OS selon les exigences.
- Test d’interface- Test des options de menu, des boutons, des signets, de l’historique, des paramètres et du flux de navigation de l’application.
- Test des services- Test des services de l’application en ligne et hors ligne.
- Test des ressources de bas niveau : Test de l’utilisation de la mémoire, de la suppression automatique des fichiers temporaires, des problèmes de croissance de la base de données locale connus sous le nom de test des ressources de bas niveau.
- Test de performance- Tester la performance de l’application en changeant la connexion de 2G, 3G à WIFI, en partageant les documents, la consommation de la batterie, etc.
- Test opérationnel- Tester les sauvegardes et le plan de récupération si une batterie tombe en panne, ou la perte de données lors de la mise à niveau de l’application à partir d’un magasin.
- Tests d’installation- Validation de l’application en l’installant/désinstallant sur les appareils.
- Tests de sécurité- Test d’une application pour valider si le système d’information protège les données ou non.
Stratégie de test des applications mobiles
La stratégie de test doit s’assurer que toutes les directives de qualité et de performance sont respectées. Quelques repères dans ce domaine :
1) Sélection des appareils – Analysez le marché et choisissez les appareils qui sont largement utilisés. (Cette décision repose principalement sur les clients. Le client ou les créateurs d’applications prennent en compte le facteur de popularité de certains appareils ainsi que les besoins marketing de l’application pour décider des appareils à utiliser pour les tests)
2) Émulateurs – Leur utilisation est extrêmement utile dans les premières étapes du développement, car ils permettent une vérification rapide et efficace de l’application. L’émulateur est un système qui fait fonctionner un logiciel d’un environnement à un autre sans modifier le logiciel lui-même. Il duplique les fonctionnalités et les travaux sur le système réel.
Types d’émulateurs mobiles
- Emulateur d’appareil- fourni par les fabricants d’appareils
- Emulateur de navigateur- simule les environnements de navigateur mobile.
- Émulateur de systèmes d’exploitation- Apple fournit des émulateurs pour les iPhones, Microsoft pour les téléphones Windows et les téléphones Android de Google
Outil recommandé
#1) Kobiton
Kobiton est une plateforme d’expérience mobile basée sur le cloud, abordable et très flexible, qui accélère les tests et la livraison d’applications natives, web et hybrides sur Android et iOS en utilisant des appareils réels. Leur nouvelle automatisation des tests sans script aide les équipes sans expertise de codage à générer facilement des scripts Appium standard ouverts.
=> Visitez le site Web de Kobiton
Liste de quelques émulateurs d’appareils mobiles gratuits et faciles à utiliser
i. Émulateur de téléphone mobile – Utilisé pour tester des combinés comme iPhone, Blackberry, HTC, Samsung, etc.
ii. MobiReady – Avec cela, non seulement nous pouvons tester l’application web, mais nous pouvons également vérifier le code.
iii. Responsivepx – Il vérifie les réponses des pages web, les apparences et les fonctionnalités des sites web.
iv. Screenfly – C’est un outil personnalisable et utilisé pour tester les sites Web sous différentes catégories.
3) Après un niveau de développement satisfaisant pour l’application mobile, vous pourriez passer aux tests sur les appareils physiques pour des tests basés sur des scénarios plus réels.
4) Envisagez les tests basés sur le cloud computing : Le cloud computing consiste essentiellement à faire fonctionner des appareils sur plusieurs systèmes ou réseaux via Internet où les applications peuvent être testées, mises à jour et gérées. À des fins de test, il crée l’environnement mobile basé sur le Web sur un simulateur pour accéder à l’application mobile.
Pros:
- Sauvegarde et récupération- Le cloud computing prend automatiquement la sauvegarde de vos données à distance rendant la récupération et la restauration des données facilement. Et aussi, la capacité de stockage est illimitée.
- Les nuages peuvent être accessibles à partir de différents appareils et n’importe où.
- L’informatique en nuage est rentable, facile à utiliser, à maintenir et à mettre à jour.
- Déploiement rapide et rapide.
- Interface basée sur le Web.
- Peut exécuter le même script sur plusieurs appareils en parallèle.
Cons
- Moins de contrôle- Puisque l’application s’exécute sur l’environnement distant ou tiers, l’utilisateur a un contrôle et un accès limités aux fonctions.
- Problèmes de connectivité Internet- la configuration est sur Internet. Les problèmes de réseau affectent la disponibilité et le fonctionnement
- Problèmes de sécurité et de confidentialité- Le cloud computing est une informatique sur Internet et rien sur Internet n’est complètement sécurisé, donc les chances de piratage des données sont plus importantes.
5) Automatisation vs. Test manuel
- Si l’application contient une nouvelle fonctionnalité, testez-la manuellement.
- Si l’application nécessite un test une ou deux fois, faites-le manuellement.
- Automatiser les scripts pour les cas de test de régression. Si les tests de régression sont répétés, les tests automatisés sont parfaits pour cela.
- Automatiser les scripts pour les scénarios complexes qui prennent beaucoup de temps s’ils sont exécutés manuellement.
Deux types d’outils d’automatisation sont disponibles pour tester les applications mobiles :
Outils de test mobile basés sur les objets- automatisation par la mise en correspondance des éléments sur l’écran de l’appareil avec des objets. Cette approche est indépendante de la taille de l’écran et principalement utilisée pour les appareils Android.
- Eg:- Ranorex, jamo solution
Outils de test mobile basés sur des images- créer des scripts d’automatisation basés sur les coordonnées d’écran des éléments.
- Eg:- Sikuli, Egg Plant, RoutineBot
6) La configuration du réseau est également la partie nécessaire du test mobile. Il est important de valider l’application sur différents réseaux comme 2G, 3G, 4G ou WIFI.
Test Cases for Testing a Mobile App
En plus des cas de test basés sur les fonctionnalités, les tests d’applications mobiles nécessitent des cas de test spéciaux qui doivent couvrir les scénarios suivants.
- L’utilisation de la batterie- Il est important de garder un suivi de la consommation de la batterie pendant l’exécution de l’application sur les appareils mobiles.
- La vitesse de l’application- le temps de réponse sur différents appareils, avec différents paramètres de mémoire, avec différents types de réseau, etc.
- Les exigences de données – Pour l’installation ainsi que pour vérifier si l’utilisateur avec le plan de données limité sera en mesure de le télécharger.
- Mémoire requise- encore une fois, pour télécharger, installer et exécuter
- La fonctionnalité de l’application- assurez-vous que l’application ne se bloque pas à cause d’une panne de réseau ou autre.
Télécharger quelques exemples de cas de test pour tester les applications mobiles :
=> Télécharger des exemples de cas de test d’applications mobiles
Activités et procédures typiques pour tester une application mobile
L’étendue des tests dépend d’un nombre d’exigences à vérifier ou de l’ampleur des changements apportés à l’appli. Si les changements sont peu nombreux, une série de tests de bon sens suffira. En cas de changements majeurs et/ou complexes, une régression complète est recommandée.
Un exemple de projet de test d’application : ILL (International Learn Lab) est une application conçue pour aider admin, éditeur à créer des sites web en collaboration. À l’aide d’un navigateur Web, les instructeurs choisissent parmi un ensemble de fonctionnalités pour créer une classe qui répond à leurs exigences.
Processus de test mobile:
Étape #1. Identifier les types de tests : Comme une application PEB est applicable pour les navigateurs, il est donc obligatoire de tester cette application sur tous les navigateurs supportés en utilisant différents appareils mobiles. Nous devons faire des tests d’utilisabilité, fonctionnels et de compatibilité sur différents navigateurs avec les combinaisons de cas de tests manuels et automatisés.
Étape #2. Tests manuels et automatisés : La méthodologie suivie pour ce projet est Agile avec l’itération de deux semaines. Toutes les deux semaines, l’équipe de dev. libère une nouvelle construction pour l’équipe de test et l’équipe de test exécutera ses cas de test dans l’environnement QA. L’équipe d’automatisation crée des scripts pour l’ensemble des fonctionnalités de base et exécute les scripts qui aident à déterminer si la nouvelle version est suffisamment stable pour être testée. L’équipe de test manuel testera la nouvelle fonctionnalité.
JIRA est utilisé pour l’écriture des critères d’acceptation ; le maintien des cas de test et la journalisation / re-vérification des défauts. Une fois l’itération se termine, réunion de planification de l’itération tenue où dev. L’équipe, le propriétaire du produit, l’analyste d’affaires et l’équipe d’assurance qualité discutent de ce qui s’est bien passé et de ce qui doit être amélioré.
Étape #3. Test bêta : Une fois que le test de régression est terminé par l’équipe d’AQ, la construction passe en UAT. Le test d’acceptation par l’utilisateur est effectué par le client. Ils revérifient tous les bogues pour s’assurer que chaque bogue a été corrigé et que l’application fonctionne comme prévu sur chaque navigateur approuvé.
Étape #4. Test de performance : L’équipe de test de performance teste la performance de l’application web en utilisant des scripts JMeter et avec différents les charges sur l’application.
Étape #5. Test de navigateur : L’application web est testée sur plusieurs navigateurs – à la fois en utilisant différents outils de simulation ainsi que physiquement en utilisant de vrais appareils mobiles.
Étape #6. Plan de lancement : Après chaque 4ème semaine, les tests se déplacent vers le staging, où une dernière série de tests de bout en bout sur ces appareils est effectuée pour s’assurer que le produit est prêt pour la production. Et puis, il va Live!
*****************************************
Comment tester les applications mobiles sur les deux plates-formes Android et iOS
Il est très important pour les testeurs qui testent leurs applications sur les deux plates-formes iOS et Android de connaître la différence entre les deux. iOS et Android ont beaucoup de différences w.r.t à l’apparence, les vues de l’application, les normes d’encodage, la performance, etc.
Différence de base entre les tests Android et iOS
Vous avez peut-être parcouru tous les tutoriels, j’ai mis ici quelques différences majeures, qui à leur tour vous aideront dans le cadre de vos tests :
#1) Comme nous avons beaucoup d’appareils Android disponibles sur le marché et tous viennent avec des résolutions et des tailles d’écran différentes, donc c’est l’une des principales différences.
Par exemple, la taille du Samsung S2 est trop petite par rapport au Nexus 6. Il y a de fortes possibilités que la mise en page et le design de votre application soient déformés sur l’un des appareils. La probabilité est faible dans iOS car il n’y a que des appareils dénombrables disponibles sur le marché et parmi ceux-ci, de nombreux téléphones ont des résolutions similaires.
Par exemple, avant que l’iPhone 6 et plus n’existe, toutes les anciennes versions avaient la même taille seulement.
#2) Un exemple pour affirmer le point ci-dessus est que dans Android, les développeurs doivent utiliser des images 1x,2x,3x,4x et 5x pour supporter les résolutions d’image pour tous les appareils alors que iOS utilise seulement 1x,2x et 3x. Cependant, il devient la responsabilité du testeur de s’assurer que les images et les autres éléments de l’interface utilisateur s’affichent correctement sur tous les appareils.
Vous pouvez vous référer au diagramme ci-dessous pour comprendre le concept des résolutions d’image:
#3) Comme nous avons le marché inondé d’appareils Android, le code doit être écrit de telle sorte que les performances restent stables. Ainsi, il est fort probable que votre application se comporte lentement sur les appareils bas de gamme.
#4) Un autre problème avec Android est que les mises à jour logicielles ne sont pas disponibles pour tous les appareils à la fois. Les fabricants d’appareils décident quand mettre à jour leurs appareils. Il devient une tâche très difficile de tout tester à la fois avec le nouvel OS et l’ancien.
De plus, cela devient une tâche lourde pour les développeurs de modifier leur code pour supporter les deux versions.
Par exemple, quand Android 6.0 est arrivé, il y a eu un changement majeur car cet OS a commencé à supporter les permissions au niveau des applications. Pour clarifier davantage, l’utilisateur pouvait modifier les permissions (emplacement, contacts) au niveau de l’application également.
Maintenant, l’équipe de test doit la responsabilité de s’assurer que l’affichage de l’écran de permissions sur le lancement de l’application sur Android 6.0 et plus et ne pas montrer l’écran de permission sur les versions inférieures.
#5) Du point de vue du test, le test de la construction de pré-production (c’est-à-dire la version bêta) est différent sur les deux plateformes. Dans Android, si un utilisateur est ajouté à la liste des utilisateurs bêta, alors il peut voir la version bêta mise à jour sur le Play Store seulement s’il est connecté dans le play store avec le même ID de courriel qui est ajouté comme utilisateur bêta.
Facteurs clés dans le test mobile
Je travaille dans le test mobile depuis 2 ans sur la plateforme iOS et Android et tous les points clés mentionnés ci-dessous dans ce tutoriel sont issus de mon expérience personnelle et certains ont été dérivés des problèmes rencontrés dans le projet.
Définissez votre propre portée du test
Chacun a son propre style de test. Certains testeurs se concentrent juste sur ce qu’ils voient de leurs yeux et les autres sont passionnés par tout ce qui fonctionne dans les coulisses de toute application mobile.
Si vous êtes un testeur iOS/Android, je vous suggère de vous familiariser au moins avec certaines limitations communes / fonctionnalités de base d’Android ou d’iOS car cela ajoute toujours de la valeur à notre style de test. Je sais que les choses sont difficiles à comprendre sans citer d’exemples.
Donné ci-dessous sont quelques exemples:
- Nous ne pouvons pas changer les permissions comme la caméra, le stockage etc. au niveau de l’application dans les appareils Android qui sont en dessous de la version 6.0.1.
- Pour iOS en dessous de la version 10.0, le kit d’appel n’était pas là. Pour vous informer en termes simples, le kit d’appel est utilisé par une application d’appel et affiche une vue plein écran lorsqu’un utilisateur reçoit un appel des applications d’appel telles que WhatsApp, Skype, etc. Alors que pour les versions iOS inférieures à 10.0, nous voyons ces appels comme une bannière de notification.
- Beaucoup d’entre vous ont pu rencontrer des problèmes dans Paytm où votre application ne vous redirige pas vers la page de paiement de la banque dans le cas où vous voulez ajouter de l’argent à votre portefeuille. Nous pensons qu’il s’agit d’un problème avec notre banque ou le serveur Paytm, mais c’est simplement que notre AndroidSystemWebView n’est pas mis à jour. De petites connaissances en programmation sont toujours utiles pour vous et à partager avec votre équipe.
- En termes simples, chaque fois qu’une application ouvre une page web en elle, alors AndroidSystemWebView devrait être mis à jour.
Ne limitez pas vos tests
Les tests ne devraient pas se limiter à l’exploration de l’application mobile et à l’enregistrement des bugs. Nous, en tant qu’AQ, devrions être conscients de toutes les demandes que nous frappons notre serveur et de la réponse que nous obtenons.
Configurer Putty pour voir les journaux ou vérifier la logique sumo pour les journaux en fonction de ce qui est utilisé dans votre projet. Cela vous aide non seulement à connaître le flux de bout en bout de l’application, mais fait également de vous un meilleur testeur car vous obtenez plus d’idées et de scénarios maintenant.
Raison : Rien ne vient dans ce monde sans raison. Toute déclaration devrait avoir une raison valable derrière elle. La raison derrière l’analyse des journaux est que de nombreuses exceptions sont observées dans les journaux mais elles ne montrent pas d’impact sur l’interface utilisateur donc nous ne le remarquons pas.
Donc, devrions-nous l’ignorer ?
Non, nous ne devrions pas. Cela n’a pas d’impact sur l’interface utilisateur mais cela peut être une préoccupation futuriste. Nous pourrions potentiellement voir notre App Crash si ce genre d’exception continue à se glisser. Comme nous avons mentionné App Crash dans la dernière phrase, cela conduit l’AQ à avoir accès aux crashlytics du projet.
Crashlytics est un outil où les crashs sont enregistrés avec l’heure et le modèle d’appareil.
Maintenant, la question ici est que si le testeur a vu l’application se planter, alors pourquoi doit-il se soucier de crashlytics ?
La réponse à cette question est assez intéressante. Il y a des crashs qui peuvent ne pas être visibles sur l’interface utilisateur mais qui sont enregistrés sur crashlytics. Il peut s’agir d’un crash hors mémoire ou de certaines exceptions fatales qui peuvent avoir un impact sur les performances plus tard.
Tests multiplateformes
Les tests d’interaction multiplateformes sont très importants.
Citant un exemple simple, disons que vous travaillez sur une application de chat comme WhatsApp qui prend en charge l’envoi d’images et de vidéos et l’application est construite sur les deux plates-formes iOS et Android(Le développement peut ou non aller en synchronisation)
Assurez-vous de tester la communication d’Android et de l’iOS, la raison étant que est iOS utilise « Objective C » tandis que la programmation Android est basée sur Java et en raison des deux étant construits sur des plates-formes différentes parfois des corrections supplémentaires doivent être faites du côté de l’application pour reconnaître les chaînes de caractères provenant de différentes plates-formes de langue.
Gardez un œil sur la taille de votre application mobile
Un autre conseil important pour les testeurs mobiles – Veuillez continuer à vérifier la taille de votre application après chaque version.
Nous devons nous assurer que la taille de l’app n’atteint pas un point où même nous, en tant qu’utilisateur final, ne voudrons pas télécharger cette app en raison de sa grande taille.
Tester les scénarios de mise à niveau de l’app
Pour les testeurs mobiles, les tests de mise à niveau de l’app sont très importants. Assurez-vous que votre application ne plante pas lors de la mise à niveau, car l’équipe de développement peut avoir fait une mauvaise correspondance d’un numéro de version.
La rétention des données est également tout aussi importante, car dans les préférences que l’utilisateur a enregistrées dans la version précédente doivent être conservées lorsqu’il met à niveau l’application.
Par exemple, un utilisateur peut avoir enregistré les détails de sa carte bancaire dans des applications comme PayTm, etc.
Le système d’exploitation de l’appareil peut ne pas supporter l’application
Son intérêt ?
Oui, de nombreux appareils peuvent ne pas supporter votre application. Beaucoup d’entre vous doivent savoir que les fournisseurs écrivent leurs propres wrappers sur le dessus de US et il pourrait être possible que toute requête SQL de votre app ne soit pas compatible avec l’appareil et donc il jette une exception et il peut en résulter de ne même pas lancer l’app sur ce téléphone.
Le point ici est – Essayez d’utiliser votre app sur vos propres appareils, sauf ceux que vous utilisez au bureau. Il est tout à fait possible que vous voyiez certains problèmes avec votre application.
Test de permission d’application
Suivant sur la liste est le test de permission des applications mobiles. Presque une application sur deux demande à ses utilisateurs l’accès au contact, à l’appareil photo, à la galerie, à la localisation, etc. de leur téléphone. J’ai vu quelques testeurs qui font une erreur en ne testant pas les bonnes combinaisons de ces permissions.
Je peux me souvenir d’un Exemple en temps réel lorsque nous testions une application de chat qui avait toutes les fonctionnalités de partage d’images et de fichiers Audio. La permission pour le stockage était réglée sur NON.
Maintenant, quand un utilisateur cliquerait sur l’option Appareil photo, elle ne s’ouvrait jamais jusqu’à ce que la permission pour le stockage soit réglée sur OUI. Le scénario a été ignoré car Android Marshmallow avait cette fonctionnalité que si la permission de stockage est définie sur NO, la caméra ne peut pas être utilisée pour cette app.
La portée s’étend plus loin que ce que nous avons discuté dans le paragraphe ci-dessus. Nous devrions nous assurer que l’app ne demande pas de permissions qui ne sont pas utilisées.
Tout utilisateur final familier avec l’industrie du logiciel peut ne pas télécharger l’app dans laquelle trop de permissions sont demandées. Si vous avez supprimé une fonctionnalité de votre app, alors assurez-vous de supprimer l’écran de permission pour la même.
Comparer avec des apps similaires et populaires sur le marché
Morale de l’histoire – Si jamais vous avez un doute, alors ne concluez pas vous-même. La comparaison avec les autres apps similaires sur la même plateforme peut renforcer votre argument que la fonctionnalité sous test fonctionnera ou non.
Donnez un aperçu du critère de rejet des builds d’Apple
Enfin, une majorité d’entre vous ont peut-être rencontré des situations où vos builds ont été rejetés par Apple. Je sais que ce sujet n’intéressera pas la majeure partie des lecteurs, mais il est toujours bon de connaître les politiques de rejet d’Apple.
En tant que testeur, il devient difficile pour nous de répondre aux aspects techniques, mais il y a quand même un critère de rejet dont les testeurs peuvent s’occuper.
Pour plus d’informations à ce sujet, veuillez cliquer ici.
Toujours être sur le devant de la scène
En tant que testeur, ne laissez pas les choses passer dans votre cour de l’équipe de développement/des gestionnaires. Si vous êtes passionné par les tests, alors « Soyez toujours sur le devant de la scène ». Essayez de vous engager dans des activités qui ont lieu bien avant que le code arrive dans votre seau pour être testé.
Le plus important, continuez à regarder JIRA, QC, MTM ou celui qui est utilisé dans votre projet pour toutes les dernières mises à jour sur les tickets des clients et de l’analyste commercial. Aussi, soyez prêt à partager vos points de vue si vous avez besoin de modifications. Cela s’applique à tous les testeurs qui travaillent sur différents domaines et plates-formes.
Jusqu’à ce que nous ne ressentions pas le produit comme le nôtre, nous ne devrions jamais donner des suggestions pour de nouvelles améliorations ou des changements à la fonctionnalité existante.
Gardez votre application en arrière-plan pendant une longue période (12-24 heures)
Je sais que cela peut sembler bizarre mais il y a beaucoup de logique derrière les scènes que nous ne comprenons pas tous.
Je partage cela parce que j’ai vu l’application se planter après son lancement, disons après environ 14 heures d’état d’arrière-plan. La raison pourrait être n’importe quoi selon la façon dont les développeurs l’ont codé.
Laissez-moi partager un Exemple en temps réel:
Dans mon cas, l’expiration du jeton était la cause derrière cela. Pour l’une des applications de chat si lancé après 12-14 heures serait bloqué sur la bannière de connexion et ne serait jamais connecté jusqu’à ce qu’il soit tué et relancé. Ce genre de choses est très difficile à attraper et, d’une certaine manière, cela rend les tests mobiles plus difficiles et créatifs.
Tests de performance de votre application
Dans le monde mobile, la performance de votre application a un impact sur la mesure dans laquelle votre application est reconnue dans le monde entier. En tant qu’équipe de test, il devient trop important de vérifier la réponse de votre app et surtout comment elle fonctionne lorsqu’un grand nombre d’utilisateurs l’utilisent tous ensemble.
Exemple :
Parlons de PayTm.
Vous avez tous dû cliquer sur l’option ADD MONEY dans l’appli PayTm, qui affiche alors le solde que vous avez dans votre portefeuille. Si nous considérons ce qui se passe dans les coulisses, alors c’est une requête qui se rend au serveur avec l’ID utilisateur PayTm et le serveur renvoie la réponse avec le solde de votre compte.
Le cas ci-dessus n’est que lorsqu’un utilisateur a touché le serveur. Nous devons nous assurer que même lorsque 1000 utilisateurs frappent le serveur, ils doivent récupérer la réponse bien à temps car la convivialité pour l’utilisateur final est notre objectif premier.
Conclusion
Je conclurais ce tutoriel en réitérant que le test mobile semble être très facile au début, mais au fur et à mesure que vous continuez à creuser, vous comprendrez qu’il n’est pas facile de s’assurer que tout ce qui est développé fonctionnera sans problème sur des milliers d’appareils dans le monde entier.
Vous verriez surtout les applications qui sont supportées sur les dernières et les quelques dernières versions de l’OS seulement. Cependant, il devient le devoir des testeurs de s’assurer qu’ils ne manquent aucun scénario. Ils sont beaucoup d’autres points qui doivent être pris en considération mais je n’ai pas mentionné ceux déjà itérés dans les autres tutoriels.
Des scénarios comme la consommation de la batterie, les tests d’interruption, les tests sur différents réseaux (3G, Wi-Fi), les tests tout en changeant de réseau, les tests de singe des applications mobiles, etc sont tous utiles quand il s’agit de tests mobiles.
L’attitude des testeurs compte beaucoup quand il s’agit de l’environnement de test réel. Jusqu’à ce que et à moins que vous aimiez votre travail, vous ne prendrez pas la peine de faire des choses qui sont mentionnées dans le tutoriel.
Je suis dans ce domaine depuis environ 6 ans maintenant et je suis très bien conscient que les tâches deviennent monotones parfois, mais il y a beaucoup d’autres choses que nous pouvons faire par nous-mêmes pour rendre ces tâches monotones quelque peu intéressantes.
Concevoir la bonne stratégie de test, choisir les bons simulateurs mobiles, les bons dispositifs et les outils de test mobiles peut nous assurer que nous avons une couverture de test de 100% et nous aider à inclure des tests basés sur la sécurité, l’utilisabilité, la performance, la fonctionnalité et la compatibilité dans nos suites de test.
Bien, ceci a été notre effort pour répondre aux multiples demandes de nos lecteurs sur un guide de test d’applications mobiles.
Auteurs : Merci à Swapna, Hasnet, et beaucoup d’autres experts en tests mobiles pour nous aider à compiler cette série !
Dans notre prochain article, nous discuterons davantage sur les tests d’applications iOS.
Dernière mise à jour : 18 février 2021
.