-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: add e2e test development process #264
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -31,6 +31,15 @@ Cela se fait par des appels API en typescript avant de lancer le test à proprem | |||||
|
||||||
Les données testées sont les mêmes en local ou via l'intégration continue. | ||||||
|
||||||
#### Process de développement des tests e2e | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
Les tests e2e sont implémentés de manière itérative, et livrés en même temps que les développements. A noter que: | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
- les tests e2e ne doivent être développés que sur les parcours utilisateurs critiques de l'application. | ||||||
- ce workflow permet d’éviter les régressions immédiates après la sortie d'une fonctionnalité, de faire monter toute l’équipe en compétences sur les tests e2e et d’éviter des PRs très longues qui ajouteraient des tests e2e entiers | ||||||
- on accepte que les tests e2e soient partiels le temps des développements et que le développement des tests alourdisse la taille des tickets et le temps de développement. | ||||||
- certaines parties du test devront être mockées le temps que la fonctionnalité soit entièrement développée mais à la fin des développements, le test e2e devra être complet et les données mockées devront avoir disparu. Les modifications finales à faire dans le test pour retirer le mocking seront normalement minimes (uniquement changer les expected values). | ||||||
- les cas de test et les parcours utilisateur devront être définis en amont, au moment du refinement du ticket, avant le PIP. Ils pourront être proposés par Aymen ou un.e PO, et devront être validés par Aymen, le.la PO compétent.e et des devs front. | ||||||
- si un test e2e touche à la config des tests e2e, à l’architecture du projet (typiquement le snapshoting) ou présente un risque de ralentir la CI, un atelier de refinement devra être organisé pour consulter les personnes en charge de l'architecture du projet et de la CI, notamment la team devops. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Doit-on utiliser le terme anglais "refinement" dans la version française? On peut remplacer par un "atelier de réflexion" ou "atelier de conception"... mais "refinement" fait probablement partie du jargon agiliste donc je suis ok quelque soit la résolution de mon commentaire. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. https://fr.wikipedia.org/wiki/Raffinement |
||||||
|
||||||
#### Atomicité d'un test | ||||||
Chaque test doit être **atomique** : il se suffit à lui même et ne peut pas être divisé. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
|
||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it could be nice to explain what Aymen does on the project ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed we should replace Aymen by QA