Les tests apps : par quoi commencer ?
Les tests apps sont devenus incontournables pour répondre au niveau d’exigence des utilisateurs et les tests de non-régression sur mobiles ne sont pas en reste. Les organisations et les solutions proposées sont nombreuses tant et si bien qu’il est parfois difficile de savoir par où commencer. De l’émulateur pour les projets en phase de développement initial avec des tests relativement simples aux tests automatisés sur de vrais devices, faisons le tour des solutions.
Tests apps avec un émulateur.
C’est la solution la plus simple à appréhender et à mettre en place. Ces programmes simulent un téléphone portable et sont accessibles en mode Saas pour la plupart. Le marché est mature mais essentiellement tourné vers le monde Android. Vous pourrez créer des tests automatisés et des scénarios relativement simples en un rien de temps et obtenir des résultats rapidement.
Cette organisation va, tout de même, présenter certaines limites. Il s’agit d’une reproduction imparfaite des téléphones et certaines fonctionnalités sont impossibles à tester (appareil photo, échauffement de la batterie …).
Un émulateur est idéal pour une application web responsif et pour faire les premiers tests de non-régression. Cela permet d’obtenir une idée générale de l’état de fonctionnement de l’application.
Réaliser des tests manuels.
Ils sont incontournables dans tous les projets. Bien souvent, au premier abord, ils permettent de gagner du temps car ils épargnent le temps de la mise en place relativement long d’une automatisation : “je veux savoir si ça marche, je teste manuellement et j’ai mon résultat”. Mais, dans les faits, plus on en fait et moins les tests manuels seront fiables. Cela va devenir long, très long de faire le tour des régressions potentielles de votre app.
Les tests manuels ont un sens sur les parties les plus critiques qui nécessiteraient des scénarios automatisés complexes ou sur les tests aux limites. Les équipes de testeurs agiles spécialisées gèrent cela très bien. Ils sont un parfait complément d’un émulateur pour une application complexe qui demande beaucoup de savoir-faire fonctionnel.
Tests automatisés sur de vrais téléphones.
Le principe est de connecter des téléphones physiques à un ordinateur pour exécuter des scénarios de tests. Les tests sont alors au plus proche du réel avec des téléphones physiques embarquant des softs identiques à ceux des utilisateurs. L’inconvénient c’est que les tests seront séquentiels : téléphone par téléphone. Cela implique de posséder les 6 à 8 téléphones nécessaires pour vos tests, de les charger, de les switcher entre chaque test et de les maintenir à jour.
Il n’est pas possible d’industrialiser les tests apps avec ce système. On pourrait l’envisager si on venait à réduire le nombre de téléphone mais cela devient un non-sens. Vous opterez pour cette solution en fonction de la disponibilité de vos équipes techniques et des enjeux. Si votre application est simple et fait appel à peu de fonctionnalités natives du téléphone c’est idéal.
Utiliser les services d’un cloud externe.
Le Graal pour tester sur un nombre de téléphone quasi illimité et sur des références de niche. C’est parfait si vous êtes hyper exigeant et que vous souhaitez que votre app fonctionne sur un nombre considérable de téléphones. L’inconvénient c’est que la disponibilité des téléphones n’est pas assurée et que pour les derniers modèles il y a de forte chance que vous vous retrouviez à faire la queue. Si vos mises en production ne sont pas pressées, tout va bien !
Particularité des téléphones loués par des services tiers : les systèmes d’exploitation ne sont pas à l’identique des systèmes des utilisateurs. Des régressions pourraient passer entre les mailles du filet. De même que si votre application entraîne une surchauffe de la batterie, il vous sera impossible de vous en rendre compte. Au final, c’est la solution idéale si votre priorité c’est de tester sur une multitude de device.
Un partenaire spécialisé : CloudNetCare.
C’est la solution full delegate par excellence. Nous gérons toute la partie physique des téléphones en nous assurant que les systèmes d’exploitation sont identiques à ceux des utilisateurs avec une disponibilité à 100%. À cela nous associons une plateforme d’automatisation des tests de non-régression sur mobile.
L’idée est de pouvoir réaliser un volume conséquent de tests apps sur des téléphones physiques en s’affranchissant de toutes les contraintes techniques.
Pour conclure.
Votre choix va s’orienter en fonction de votre niveau d’exigence, de votre budget et de la complexité de votre app mobile.
Les émulateurs sont parfaits pour démarrer et s’initier aux tests apps quand un cloud externe ou un partenaire spécialisé deviendra incontournable pour des scénarios complexes à reproduire sur des dizaines de device.
CloudNetCare
Pour que chaque clic soit une expérience réussie
On pilote vos tests, vous gardez le contrôle !
Grâce à notre expertise, vos applications et sites web restent fluides, sans bugs ni frictions, vous permettant de vous concentrer sur votre innovation et garantir ainsi une expérience utilisateur irréprochable.
Notre cabinet français d’experts en tests logiciels, automatise, gère et analyse vos tests quotidiennement pour détecter et corriger les dysfonctionnements avant qu’ils n’affectent vos utilisateurs.