Gherkin és un llenguatge de domini específic utilitzat per escriure escenaris de prova en el desenvolupament guiat per comportament (BDD). La seva sintaxi és senzilla i llegible per humans, la qual cosa permet que tant desenvolupadors com no desenvolupadors puguin entendre fàcilment les especificacions de les proves.

Conceptes clau de Gherkin

  1. Llenguatge llegible per humans: Gherkin està dissenyat per ser comprensible per qualsevol persona, independentment de la seva experiència tècnica.
  2. Estructura basada en paraules clau: Utilitza paraules clau específiques per definir l'estructura dels escenaris.
  3. Suport multillenguatge: Gherkin suporta múltiples idiomes, permetent que les proves es puguin escriure en l'idioma que millor s'adapti a l'equip.

Estructura bàsica de Gherkin

Un fitxer de característiques Gherkin es compon de diverses seccions clau:

  • Feature (Característica): Descriu la funcionalitat que s'està provant.
  • Scenario (Escenari): Defineix un cas de prova específic.
  • Given (Donat), When (Quan), Then (Llavors): Són les paraules clau que defineixen els passos d'un escenari.

Exemple de fitxer de característiques

Feature: Login functionality

  Scenario: Successful login with valid credentials
    Given the user is on the login page
    When the user enters valid credentials
    Then the user should be redirected to the dashboard

Explicació de l'exemple

  • Feature: "Login functionality" descriu la funcionalitat general que s'està provant.
  • Scenario: "Successful login with valid credentials" és un cas de prova específic dins de la funcionalitat de login.
  • Given: Defineix l'estat inicial o les precondicions ("the user is on the login page").
  • When: Descriu l'acció que es realitza ("the user enters valid credentials").
  • Then: Defineix el resultat esperat ("the user should be redirected to the dashboard").

Exercici pràctic

Objectiu: Escriure un escenari Gherkin per a la funcionalitat de registre d'un usuari.

Instruccions

  1. Crea un fitxer de característiques anomenat register.feature.
  2. Defineix una característica anomenada "User registration".
  3. Escriu un escenari per a un registre d'usuari amb dades vàlides.
  4. Utilitza les paraules clau Given, When, Then per estructurar l'escenari.

Solució

Feature: User registration

  Scenario: Successful registration with valid data
    Given the user is on the registration page
    When the user enters valid registration details
    Then the user should see a confirmation message

Errors comuns i consells

  • Evitar la complexitat: Mantingues els escenaris simples i directes. Cada escenari hauria de provar un sol comportament.
  • Reutilització de passos: Si diversos escenaris comparteixen passos comuns, considera crear definicions de passos reutilitzables.
  • Claredat en els noms: Utilitza noms clars i descriptius per a les característiques i escenaris.

Conclusió

La sintaxi Gherkin proporciona una manera clara i estructurada d'escriure escenaris de prova que són fàcils de llegir i entendre per a tots els membres de l'equip. En el següent tema, explorarem com escriure el teu primer escenari utilitzant aquesta sintaxi.

© Copyright 2024. Tots els drets reservats