doc: add TD3 report
This commit is contained in:
parent
e5e6a01c57
commit
362459662c
1 changed files with 83 additions and 0 deletions
83
td3_rapport.md
Normal file
83
td3_rapport.md
Normal file
|
@ -0,0 +1,83 @@
|
|||
# TD3 - Tests
|
||||
|
||||
Rendre un document avec les réponses aux questions de ce TD
|
||||
|
||||
Installer nodeJS, NPM pour la suite
|
||||
|
||||
1. Cloner https://github.com/jleveau/M2-Workshops.git (petite application qui permet de créer un atelier & afficher les ateliers créés)
|
||||
2. 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` vers `workshop` renvoie un code HTTP `200`
|
||||
> 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](https://taskfile.dev).
|
||||
|
||||
(Optionnel) L'outil de gestion des ateliers proposé ci-dessus ne plaît pas au client, il va falloir en réaliser un autre.
|
||||
|
||||
1. 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
|
Loading…
Add table
Add a link
Reference in a new issue