Lors de mon passage chez Darva, j'ai eu l'opportunité de travailler sur le projet Exiris, une application innovante d'envoi de courrier recommandé électronique. Une partie essentielle de ce projet consistait à mettre en place une suite de tests end-to-end robuste et efficace pour garantir la qualité de l'application.
Le défi : plus de 200 cas de tests en 3 heures
Le cahier des charges initial prévoyait plus de 200 cas de tests à exécuter en un temps maximal de 3 heures. Un défi de taille qui nécessitait une optimisation méticuleuse de la suite de tests.
Notre approche avec Cypress : une organisation par profils et droits
Pour structurer efficacement cette multitude de cas de tests, nous avons opté pour une approche basée sur les profils et les droits d'utilisateur. En regroupant les cas de tests en fonction de ces critères, nous avons pu :
* Limiter le nombre de connexions et de déconnexions : En groupant les cas de tests par profil, nous avons réduit significativement le temps passé sur les opérations de connexion et de déconnexion, qui sont souvent chronophages.
* Maintenir une couverture de test équivalente : Malgré cette optimisation, nous avons veillé à maintenir une couverture de test complète en s'assurant que tous les scénarios d'utilisation étaient bien couverts.
* Réduire la création de mockups en base de données : En optimisant la création et la gestion des données de test, nous avons diminué la charge sur la base de données et amélioré la performance des tests.
Les résultats : une exécution en 30 minutes
Grâce à cette organisation rigoureuse et à l'utilisation de Cypress, nous avons réussi à réduire considérablement la durée d'exécution de la suite de tests, passant de 3 heures à seulement 30 minutes. Cette amélioration significative nous a permis de gagner en productivité et de renforcer la confiance dans la qualité de l'application.
Les enseignements clés
Cette expérience m'a permis de tirer plusieurs enseignements :
* L'importance d'une bonne organisation des tests : Une structure claire et logique est essentielle pour maintenir une suite de tests facilement compréhensible et évolutive.
* Les avantages de Cypress : Cypress s'est révélé être un outil puissant et flexible pour la mise en place de tests end-to-end.
* La nécessité d'optimiser la gestion des données de test : Une gestion efficace des données de test est cruciale pour améliorer les performances des tests.
En conclusion, cette expérience a été très enrichissante et m'a permis de développer de nouvelles compétences en matière de tests automatisés. Je suis convaincu que cette approche peut être bénéfique pour tout projet nécessitant une suite de tests robuste et performante.
Mots-clés : Cypress, tests end-to-end, optimisation, organisation, profils utilisateurs, droits d'accès, couverture de test, Exiris, Darva
Commentaires
Enregistrer un commentaire