test application android

Nous avons vu dans notre précédent article le nombre de paramètres à prendre en compte dans la phase de test d’une application mobile Android (versions d’Android, marques de smartphones, densités, mode portrait/paysage éventuellement) afin de réduire au maximum le nombre de bugs.

Il y a 4 manières pour pouvoir exécuter tous les scénarios fonctionnels d’une application mobile en prenant en compte tous ces paramètres  :

  • Disposer de smartphones

L’agence qui réalise l’application doit disposer idéalement de tous les OS (ce qui est possible), les densités (ce qui est possible également) mais disposer d’une grande diversité de smartphones a un coût d’autant qu’il faut renouveler régulièrement son parc de smartphones.

  • Emulateurs / simulateurs

L’émulateur ou le simulateur peuvent être installés sur la machine du développeur, du testeur…
Ils permettent de simuler le comportement d’un modèle de smartphone sur sa machine. L’avantage est clair : pas besoin d’acheter un smartphone. Il y a des différentes entre les deux néanmoins :

–> L’émulateur reproduit exactement le même comportement du smartphone (software et hardware) et est fourni généralement par le constructeur du smartphone. L’inconvénient principal reste sa lenteur ce qui gène la tenue des tests. C’est notamment le cas pour Android.
Nous avons également Genymotion

–> Le simulateur reproduit le comportement software uniquement puisqu’il hérite des capacités hardware de la machine sur laquelle il s’exécute. Le simulateur est de ce fait plus rapide qu’un émulateur et offre une expérience de tests largement supérieure. En revanche, des bugs qui surviennent sur un smartphone réel peuvent ne pas se produire sur un simulateur. C’est le cas notamment du simulateur iOS fourni par Apple.

  • Cloud

Les solutions sur le cloud proposent des smartphones réels à travers une interface web accessible via le navigateur et à des coûts qui en valent la peine, il est possible d’avoir accès à distance à des smartphones de toutes marques et de pouvoir tester son application mobile et d’effectuer un test sur nombre important de smartphones en même temps. Parmi les solutions que nous avons testé :
– TestObject (httpss://testobject.com/) qui permet d’effectuer des tests manuels et automatisés
– Amazon Device Farm (httpss://aws.amazon.com/fr/device-farm/) permet aussi les tests manuels ou automatisés.

Le fonctionnement de ces services et leurs pricings est basé sur le nombre de minutes à effectuer les tests.

  • Tests manuels vs automatisés

Plus un projet d’application grossit et plus les versions se succèdent et plus les tests automatisés devient inévitables. Ils sont même très recommandés dès la 1ère version d’une application.
Les tests automatisés répondent à la problématique suivante : Puisque les tests sont amenés à être de nouveau refait à chaque nouvelle version, chaque correction de bug etc, il vaudriat mieux écrire et développeur tous les tests une seule fois et de pouvoir les automatiser pour ne pas avoir à les refaire manuellement à chaque fois. Le principal inconvénient est le coût d’écriture de tous ces tests mais qui sera récupéré au fur des mises à jour puisque le test sera beaucoup plus rapide à ce moment là qu’un test manuel.
On peut citer Espresso et Robotium pour écrire des tests d’interface pour Android (reproduire un test utilisateur mais de façon automatique). Appium également qui est destiné à Android mais aussi iOS.

 

Si cet article vous a apporté des informations utiles, que vous rencontrez des problématiques liées aux tests et que vous avez besoin d’informations supplémentaires, vous pouvez nous contacter via le site de notre agence de développement d’applications mobiles.

Laissez un commentaire