Calabash

Dans le cadre du projet EUROSPORT de refonte des applications iOS et Android nous avons effectué de nombreux tests fonctionnels sur ces deux environnements.

Notre objectif initial était d’automatiser les 700 tests du cahier de recette afin d’accélérer la phase de qualification des applications. Le second objectif était de pouvoir exécuter ces tests en environnement d’intégration continue afin d’éviter les régressions lors de la maintenance des applications.

Notre choix s’est porté vers Calabash qui est un ensemble de librairies permettant de simuler des interactions avec des applications iOS et Android. En effet, Calabash permet de simuler des gestures (tap, swipe, rotate,…) et d’effectuer des assertions relatives au contenu des écrans (présence d’un contrôle ou d’un contenu textuel). Calabash permet également de faire une copie virtuelle de l’écran affiché sur tous les appareils mobiles.

De plus, Calabash est compatible avec Cucumber qui facilite la rédaction des tests dans un langage quasi naturel :

Sur cette base, on peut construire des scénarios qui seront exécutés par Calabash pour manipuler l'application sur les deux OS et toute une série d'appareils.

Un exemple concret, le test de la page « Voir les scores » des application mobiles :

Le tout est exécuté par Jenkins et est couplé à un écran qui affiche les tests en live sur le simulateur.

Dans le cadre d’Eurosport, cette méthode nous a également permis de déléguer l'exécution des tests à un prestataire externe comme le Test-cloud de Xamarin. Le principe est d’envoyer l'application et le jeu de tests, puis de l'exécuter à distance sur un grand nombre d'appareils différents.

Pour en savoir plus :

http://calaba.sh/

http://xamarin.com/test-cloud

https://cucumber.io/

 

J-B G

Commentaires

Yves
Très intéressant !!!

Ajouter un commentaire