Given When Then – comprendre

given when then
given when then

Dans le domaine du développement logiciel et de l’assurance qualité, des tests efficaces sont essentiels pour s’assurer qu’un produit logiciel fonctionne correctement et répond aux attentes des utilisateurs. Le cadre « Given When Then » (GWT) est une technique puissante qui facilite la création de cas de test clairs et complets.

Dans cet article, nous explorerons le cadre GWT, ses principes et son importance dans les tests logiciels.

Comprendre Given When Then

Given When Then est un format structuré pour définir et organiser des cas de test. Il aide les testeurs et les développeurs à créer une compréhension commune du comportement attendu d’un système ou d’une fonctionnalité logicielle.

Ce format provient du langage naturel appelé Gherkin que nous avons déjà traité précédemment : lire l’article.

Le cadre se compose de trois parties :

  • Given : cette section établit le contexte initial ou les préconditions du cas de test. Elle définit l’état de départ du système ou de la fonctionnalité testée.

  • When : dans cette partie, les actions ou événements spécifiques qui déclenchent le comportement à tester sont décrits. Elle définit les interactions de l’utilisateur ou les entrées du système.

  • Then : la section « Then » décrit les résultats attendus ou les résultats du cas de test. Elle spécifie ce qui devrait se produire en conséquence des actions prises dans la section « When ».

given when then - gherkin
given when then – gherkin

La puissance de Given When Then

Le cadre GWT offre plusieurs avantages dans le contexte des tests logiciels :

  1. Clarté : les cas de test GWT sont rédigés dans un langage simple et sont faciles à comprendre, même pour les parties prenantes non techniques. Cette clarté garantit que tous les intervenants impliqués dans le processus de test ont une compréhension commune de ce qui est testé.

  2. Consistance : GWT encourage un format cohérent pour la conception des cas de test, ce qui facilite leur gestion et leur exécution au sein de différentes équipes et projets.

  3. Traçabilité : chaque partie du format GWT fournit un lien de traçabilité clair. Les testeurs peuvent remonter des résultats de la section « Then » aux conditions et actions spécifiques des sections « Given » et « When ».

  4. Isolation : Le format GWT encourage la division des cas de test en scénarios plus petits et plus ciblés. Cela permet une meilleure isolation des problèmes lorsque des défauts sont découverts.

Exemple de Given When Then

Prenons un exemple simple pour illustrer l’utilisation du cadre GWT :

Scenario: User registration with valid data

Given that the user is on the registration page
When the user enters a valid email address and password
    And click on the “Register” button
Then the system should display a “Registration successful” message.
    And the user should be logged in to the system

Dans cet exemple, la section « Given » établit le contexte initial, la section « When » décrit les actions de l’utilisateur, et la section « Then » décrit les résultats attendus.

Certains outils de tests pour faire du BDD (Behavior Driven Development) autorisent d’écrire ces tests en français mais cela impactera le code qui contiendra des noms de fonctions en français. Version française : lire l’article.

Conclusion

Le cadre Given When Then (GWT) est un outil précieux pour la conception et la documentation des cas de test dans les tests logiciels. Il favorise la clarté, la consistance, la traçabilité et l’isolation des problèmes, autant d’éléments qui contribuent à des processus de test efficaces et efficients. En suivant ce format structuré, les testeurs et les développeurs peuvent créer des cas de test faciles à comprendre et à exécuter, améliorant ainsi la qualité des produits logiciels.

[ Article lu 1 fois aujourd'hui ]
A propos Judicaël Paquet 942 Articles
  Paquet Judicaël (expert en transformation et AI) Mes activités en France et en Suisse : - ingénieur prompt - coach AI - architecte de transformation agile - formations agiles personnalisées - sensibilisations et coaching de manager - audits de maturité agile et de situations - coaching agile (équipes, orga, product owner, scrum master, coach agile) Spécialités : scrum, kanban, management 3.0, agilité à l’échelle, lean startup, méthode agile, prompt AI, Intelligence artificielle. [Me contacter]

Soyez le premier à commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*


Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.