QuaBDD, partagez facilement vos scénarii Gherkin

Le Behavior Driven Developpement (BDD) fait partie des bonnes pratiques de développement. Il consiste à écrire le comportement attendu de l’application pour ensuite le transformer en tests et enfin développer la fonctionnalité en suivant ces tests. Ces comportements sont écrits en Gherkin par le Product Owner (PO) en collaboration avec les développeurs. La problématique est l’écriture et le stockage de ces Gherkin. 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 Gherkin directement dans un tableau Kanban.

Installation

Depuis l’interface :

Comme QuaBDD fait partie de la liste officielle des plugins de Kanboard, il est possible de l’installer en ‘remote install’. C’est-à-dire que qu’il est possible de 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ée 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 toutefois 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énarii. 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 final, 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 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 Gherkin.

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 partie (Given, When, Then) vous voulez remplir. En appuyant sur le bouton Ajouter, vous aurez votre ligne qui sera ajoutée dans l’affichage de droite. Dans cette partie, vous pourrez supprimer les lignes que vous souhaitez en appuyant sur la 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 ouverte après la création du Gherkin pour pouvoir en créer rapidement un autre.

Afficher les Gherkin

Une nouvelle partie nommée ‘Gherkin’ est disponible dans les détails de la tâche. Dans cette partie, vous allez avoir la liste de tous les Gherkin affectés à 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 celle-ci avec le nombre de Gherkin qu’elle possède. Si vous appuyez 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 Gherkin

Une fois que vous avez écrit tous les Gherkin dont vous avez besoin 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 fera apparaître une fenêtre avec toutes les informations dont 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 langages de programmation (Python, Java, JS, Ruby) et de framework pour exporter votre fichier .step. Après sélection, vous pourrez le télécharger en appuyant sur le bouton ‘Exporter le fichier .step’.

Il est possible de créer directement ces fichiers .feature et .step dans votre branche de développement Git en utilisant le plugin QuaCICD. Vous retrouverez plus d’informations 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 e-mail ne sera pas publiée.