QuaBDD, partager facilement vos scénarios Gherkins.

Le BDD ou Behavior driven developpement fait partie des bonnes pratiques de développement. Il consiste à écrire le comportement attendu de l’application pour ensuite de le transformer en tests et enfin développer la fonctionnalité en suivant ces tests. Ces comportements sont écrits en Gherkin par le Product Owner en collaboration avec les développeurs. La problématique est l’écriture et le stockage de ces Gherkins. Le Product-Owner ne va pas aller dans un IDE pour les écrire. C’est là qu’intervient le plugin QuaBDD de Kanboard. Il va vous guider dans l’écriture des tests en utilisant la syntaxe Gherkin. Et va aussi vous permettre de stocker les Gherkins directement dans un tableau Kanban.

Installation

Depuis l’interface :

Comme QuaBDD fait partie de la liste officiel des plugins de Kanboard il est possible de l’installer en ‘remote install’. C’est à dire que l’on peut l’installer directement depuis le panneau de configuration de Kanboard.

Image de QuaBDD dans la liste des plugins officiels de Kanboard
Depuis le serveur :

Si l’installation à distance n’est pas activé sur votre Kanboard alors vous avez deux solutions :

  • Cloner le dépôt git dans le dossier plugin de votre installation de Kanboard.
git clone git@gitlab.com:quamob/QuaBDD.git
  • Télécharger le zip du plugin dans l’onglet ‘release’ du dépôt git et l’extraire dans le dossier plugin.

Syntaxe Gherkin

La syntaxe Gherkin permet de décrire le comportement voulu d’une application en français dans un fichier .feature. Cela permet à des personnes qui ne savent pas forcément coder de lire et d’écrire ces tests. Il faut toute fois respecter un format.

Un fichier .feature correspond à une fonctionnalité. Cette fonctionnalité aura un titre et une description qui seront écrit sous ce format :

Feature: Titre de la fonctionnalité
    Description de la fonctionnalité

Ensuite chaque comportement que l’on va décrire s’appelle des scénarios. Chaque scénario devra être écrit en trois parties ‘Given’, ‘When’ et ‘Then’. Dans ‘Given’, il faudra décrire le contexte initial du scénario. Pour ‘When’, il faudra décrire un évènement, une action. Cela peut être une personne qui interagit avec le système, ou un événement déclenché par un autre système. Enfin pour ‘Then’, il faudra écrire le résultat attendu après l’événement.

Au finale, le fichier .feature sera de la forme ci-dessous :

Feature: Effectuer une recherche dans le catalogue
    En tant que client
    Je veux afficher le catalogue du site en fonction des filtres que je choisis

    Scenario: Fait une recherche avec une catégorie comme filtre
        Given J'ai le catalogue rempli d'article sur le site internet
        And J'ai un filtre sur une catégorie d'article
        When Quand je lance ma recherche
        Then Je dois avoir d'affiché seulement les articles de la catégorie

    Scenario: Fait une recherche avec aucun filtre
        Given J'ai le catalogue rempli d'article sur le site internet
        And Je n'ai aucun filtre
        When Quand je lance ma recherche
        Then Je dois avoir tous les articles du site d'affiché

Ajouter un gherkin

Avec QuaBDD d’installé, un nouveau bouton « Ajouter un test Gherkin » apparaît à deux endroits. Un se situe dans la liste déroulante des options d’une tâche et un autre se trouve dans les détails d’une tâche. Appuyer sur ce bouton va ouvrir une fenêtre de création de tests Gherkins.

Image de l'interface de création d'un test Gherkin

Le titre correspond au titre du scénario Gherkin. Vous pouvez ensuite choisir dans la liste déroulante quelle parties (Given, When, Then) vous voulez remplir. En appuyant sur le bouton ajouter, vous aurez votre ligne qui sera ajouter dans l’affichage de droite. Dans cette partie, vous pourrez supprime les lignes que vous souhaitez en appuyant sur la petit croix noire. Enfin un exemple est disponible en appuyant sur ‘Exemple’ et la case ‘Créer un autre Gherkin’ vous permet de garder la fenêtre ouvert après la création du Gherkin pour pouvoir un créer rapidement un autre.

Afficher les Gherkins

Une nouvelle partie nommé ‘Gherkins’ est disponible dans les détails de la tâche. Dans cette partie, vous allez avoir la liste de tous les Gherkins affectés à la cette tâche. Si vous avez les droits de modification sur le projet vous allez avoir accès à deux boutons, un bouton de modification et un bouton de suppression.

Image de la partie Gherkins du détail d'une tâche sur Kanboard

Nouveau tag sur vos tâches

QuaBDD ajoute un nouveau tag sur vos tâches. Si une tâche possède au moins un test Gherkin, alors un tag apparaîtra sur la tâche avec le nombre de Gherkin qu’elle possède. Si vous appuyer dessus, vous aurez accès au même affichage des tests Gherkin que dans les détails de la tâche.

Image montrant le nouveau tag du nombre de Gherkin d'une tâche

Exporter les Gherkins

Une fois que vous avez écrit tous les Gherkins qu’il vous faut pour votre fonctionnalité, vous avez la possibilité de les copier. Pour cela, il suffit d’appuyer sur le bouton ‘Afficher tous les tests Gherkin’. Cela va vous afficher une fenêtre avec toutes les informations que vous avez besoin pour votre fichier .feature.

A partir de cette fenêtre vous pouvez donc télécharger le fichier .feature correspondant en appuyant sur ‘Exporter le fichier .feature’. Ensuite, vous avez le choix entre différents langage de programmation (Python, Java, JS, Ruby) et de framework pour exporter votre fichier step. Il vous suffit de choisir ce que vous souhaitez et vous pourrez le télécharger en appuyant sur le bouton ‘Exporter le fichier .step’.

Il est possible de créer directement c’est fichier .feature et .step dans votre branche de développement git en utilisant le plugin QuaCICD. Vous retrouverez plus d’information sur l’article correspondant à ce plugin.

Vidéos

Le plugin est accompagné de trois vidéos :

  • Une vidéo de présentation
  • Une vidéo sur l’utilisation du plugin
  • Une vidéo d’explication du code source

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *