Covid-19 et criticalité de la qualité des applications mobiles

L’industrie des applications mobiles s’est révélée très résistante à la crise sanitaire et économique actuelle. Boostées par le recours massif au télétravail, les installations d’applications professionnelles, de jeu ou de restauration ont augmenté de manière conséquente. De même que le nombre de sessions et par extension, les revenus des applications payantes.

Cependant, comment continuer d’assurer le bon niveau de qualité de ces applications mobiles entre le travail à distance et l’absence d’accès direct aux terminaux mobiles habituels ?

Bien que des tests puissent être réalisés sur émulateur, une application mobile doit impérativement être testée sur des terminaux réels, via une solution permettant leur prise en main à distance. Cela permet de mettre à disposition des développeurs et des testeurs un panel représentatif de mobiles et tablettes.

Ces terminaux peuvent être hébergés dans le datacenter de l’entreprise ou dans le cloud, mais il est également possible d’adopter une approche hybride.

Bonnes pratiques

1- Industrialiser les tests mobiles

Il est conseillé de les intégrer au processus qualité de l’entreprise : tester les applications mobiles en interne en utilisant les outils mis à disposition par l’entreprise, et dans le respect des pratiques de cette dernière. L’objectif est d’avoir une vision globale de la qualité de ces applications en temps réel et de pouvoir intervenir en cas de problème.

2 – Couvrir tous les aspects de la qualité

Une application mobile doit être validée fonctionnellement pour vérifier qu’elle répond bien aux besoins métier. Ses performances (vérification des temps de réponse) et sa sécurité doivent également être vérifiés, afin de détecter et de corriger d’éventuelles défaillances.

Il convient également d’utiliser des solutions d’émulation de conditions réseau en complément des outils de tests fonctionnels ou de performance, afin de d’avoir des résultats de test pertinents et représentatifs de la réalité. 

3 – Automatisation des tests

Les applications mobiles évoluent rapidement, ainsi que leurs versions au rythme d’une par mois minimum, d’où l’importance de l’automatisation. Il existe des solutions pour automatiser les tests fonctionnels, de performance ou de sécurité, qui peuvent être lancés directement depuis l’outil d’intégration continue. L’exécution automatique est lancée suite à un changement de code par exemple. Les approches utilisées pour développer les applications mobiles sont souvent agiles/DevOps. 

Cependant, l’automatisation des tests fonctionnels nécessite d’effectuer des mises à jour régulières dans les scripts ou au niveau des objets graphiques concernés afin de s’adapter à l’interface graphique de l’application mobile, en constante évolution. Les tests automatisés sont en général dupliqués pour chaque OS, car les objets natifs sont différents sur chacun d’eux.

Enfin, l’IA apparaît comme un accélérateur : on utilise un moteur d’IA auquel on a appris des milliers d’images d’objets grâce au machine learning, que l’on peut enrichir si jamais certains objets de notre application ne sont pas reconnus. De cette manière, plus besoin de retrouver un objet en utilisant ses propriétés. Enfin, elle permet d’écrire le test automatisé en langage naturel à travers une approche NLP pour qu’il puisse être directement créé et maintenu par des experts fonctionnels.

Source : https://www.silicon.fr/avis-expert/covid-19-la-qualite-des-applications-mobiles-plus-critique-que-jamais

Autres articles …