Des tests frontends automatisés avec Cypress dans Gladys!

Salut à tous,

Récemment, nous avons eu quelques déploiements qui ont cassés certaines parties du frontend.

Le frontend accueillant de plus en plus d’intégrations, et de plus en plus d’écrans, il devient de plus en plus long et compliqué de tester manuellement que chaque nouvelle version n’apporte pas de régression ^^

De la même manière que le backend a des tests automatisées (qui couvrent plus de 95% du code), on a donc décidé d’ajouter des tests automatisés au frontend, avec Cypress !

@AlexTrovato a fait tout le débroussaillage autour de la techno pour comprendre comment ça fonctionne et comment on pourrait en mettre dans Gladys, et aujourd’hui j’ai merge la première partie de ce développement! (Cypress tests by atrovato · Pull Request #1086 · GladysAssistant/Gladys · GitHub). Un gros merci pour le travail abattu :pray:

Aujourd’hui, nous avons des tests frontends:

  • Sur le process de signup
  • Sur le process de login
  • Sur l’intégration bluetooth

C’est vraiment le début de ces tests frontends dans Gladys, et maintenant l’objectif est d’en rajouter un maximum, autant sur les nouveaux développements que sur les fonctionnalités existantes.

J’ai fais une petite vidéo des test entrain de tourner sur ma machine locale:

https://streamable.com/1fqfz5

Je trouve ça assez marrant à voir, c’est vraiment comme si un utilisateur se promenait très vite dans Gladys et testait très vite plein de scénarios :slight_smile:

La documentation

J’ai écris une petite doc qui récapitule comment lancer les tests Cypress en local:

C’est vraiment sommaire pour l’instant, je pense qu’il faudrait l’étoffer avec les “best practices” que tu avais écrites dans ta présentation @AlexTrovato ? :slight_smile:

3 « J'aime »

@AlexTrovato Je suis entrain d’ajouter des tests Cypress du coup, et je me casse les dents sur react-select :smiley:

J’ai plusieurs approches possibles:

  • Soit je la joue “type”, en mode je tape ce que je veux sélectionner puis je fais “enter”
  • Soit je la joue “class” et j’essaie de faire un click mais c’est pas facile

Pour l’instant ça ressemble à ça:

https://streamable.com/z34ruy

Je m’éclate en tout cas, c’est vraiment fluide et facile à faire :slight_smile:

Salut, tu t’en es sorti avec le select ?

Pas eu le temps de finir (release v4.3.1, et autres), je reprend la semaine pro :slight_smile: Je vais m’en sortir!