3.1 KiB
TD3 - Tests
Rendre un document avec les réponses aux questions de ce TD
Installer nodeJS, NPM pour la suite
- Cloner https://github.com/jleveau/M2-Workshops.git (petite application qui permet de créer un atelier & afficher les ateliers créés)
- Installer et lancer le code (au besoin, lisez l'énoncé de https://github.com/xblanc33/cdp-td/blob/master/td4_code.md)
3. Ecrire en Gherkin des scénarios de tests couvrant:
la création d'un atelier
Scénario A.1
Lorsque qu'un utilisateur décide de créer un atelier, Quand il appuie sur le bouton Ajouter un atelier Alors une requete
GET
versworkshop
renvoie un code HTTP200
Et le formulaire d'ajour d'atelier est affiché
Scénario A.2
Lorsque qu'un utilisateur se trouve sur la page d'ajout d'atelier, Quand il appuie sur le bouton Annuler Alors il reviens sur la page d'accueil Et aucune donnée est enregistrée
Scénario A.3
Étand donné qu'un utilisateur valide le formulaire d'ajout d'atelier Quand il clique sur le bouton Enregistrer Et que le champs Name est vide Alors Un message d'erreur est affiché Et l'utilisateur reste sur la page en cours
Scénario A.4
Étand donné qu'un utilisateur valide le formulaire d'ajout d'atelier Quand il clique sur le bouton Enregistrer Et que le champs Description est vide Alors Un message d'erreur est affiché Et l'utilisateur reste sur la page en cours
Scénario A.5
Étand donné qu'un utilisateur valide le formmulaire d'ajout d'atelier Quand il clique sur le bouton Enregistrer Et que les champs Name et Description sont specifiés Alors L'utilisateur est redirigé sur la page d'accueil Et les données sont enregistrés Et L'atelier est ajouté en premier à la liste visible sur la page d'accueil
L'affichage de la liste des ateliers
Scénario B.1
Losque qu'un utilisateur arrive sur la page d'accueil Quand aucun atelier n'est défini Alors seul le bandeau titre et le bouton Create new workshop sont affichés
Scénario B.1
Losque q'un utilisateur arrive sur la page d'accueil Quand un ou plusieurs ateliers sont enregistrés Alors il sont affichés en dessous du bouton Et dans l'ordre de création
Implémenter les scénari que vous aurez décrits (3.) en Selenium (http://docs.seleniumhq.org/, http://en.wikipedia.org/wiki/List_of_web_testing_tools)
Pour la mise en place de mes test, j'ai choisi d'utiliser le langage Python, unittest présent dans la bibliothèque standard et lrd binding Python pour Selenium.
J'ai utilisé le driver Selenium pour le navigateur Firefox pour la mise en place des tests.
Afin de faciliter le lancement de mes tests, et d'être sûr d'avoiur un environement vierge à chaque exécution, les environnements sont lancés par un Taskfile.
(Optionnel) L'outil de gestion des ateliers proposé ci-dessus ne plaît pas au client, il va falloir en réaliser un autre.
- Utiliser Figma (https://www.figma.com/) pour proposer une nouvelle maquette de l'outil de gestion des ateliers2. Adapter les scénari de tests écrits en Gherkin à cette nouvelle maquette