Talking About TestingATT</>
Cypress y Cucumber

Obtén 100% en el cuestionario para continuar

Lección
Vista previa gratuita

Probando tu primera feature

Escribe tu primer archivo feature en Gherkin, el lenguaje que Cucumber entiende.

Al usar Cucumber junto con herramientas de prueba automatizada como Cypress, escribimos pruebas en un lenguaje conocido como Gherkin.

Gherkin es un lenguaje específico de dominio que permite el uso de algunas palabras clave para describir funcionalidades y sus comportamientos.

Ejemplo:

# cypress/e2e/login.feature

Feature: Login

  Scenario: successful login
    Given I access the Login form
    When I submit it with valid credentials
    Then I see the logged-in features available
  • La palabra clave Feature define la funcionalidad bajo prueba
  • La palabra clave Scenario describe el escenario, o caso de prueba
  • La palabra clave Given define la precondición de la prueba, es decir, el estado inicial para que ese escenario sea probado
  • La palabra clave When define la acción (o acciones) que ejercita la aplicación bajo prueba para un escenario dado
  • La palabra clave Then define el resultado esperado, es decir, lo que debe ocurrir después de que la acción (o acciones) anterior(es) sea(n) ejecutada(s)
  • La palabra clave And es un alias de Given, When o Then, y puede usarse cuando la precondición, la acción o el resultado esperado tiene más de un paso

Visión general de los comandos 📖

A continuación están las palabras clave de Gherkin usadas en el ejercicio de esta lección.

Feature

Define la funcionalidad o capacidad de alto nivel que se está describiendo y probando.

Sintaxis:

Feature: <description>

Ejemplo:

Feature: Login

Scenario

Describe un único caso de prueba, representando un comportamiento específico de la funcionalidad.

Sintaxis:

Scenario: <description>

Ejemplo:

Scenario: successful login

Given

Define el estado inicial o la precondición para que el escenario sea probado.

Sintaxis:

Given <step description>

Ejemplo:

Given I access the Login form

When

Define la acción o evento que ejercita la funcionalidad bajo prueba.

Sintaxis:

When <step description>

Ejemplo:

When I submit it with valid credentials

Then

Define el resultado esperado después de la acción descrita en el paso When.

Sintaxis:

Then <step description>

Ejemplo:

Then I see the logged-in features available

And

Un alias de Given, When o Then. Úsalo para agregar un segundo (o tercer) paso a la misma parte del escenario, evitando la repetición de la misma palabra clave.

Sintaxis:

And <step description>

Ejemplo:

Feature: Login

  Scenario: successful login
    Given I access the Login form
    And the form is empty
    When I fill in my credentials
    And I click the submit button
    Then I see the logged-in features available
    And the login form is no longer visible

Ejercicio 🎯

  1. Dentro de la carpeta cypress/e2e/, crea una carpeta llamada engagesphere/
  2. Dentro de la carpeta cypress/e2e/engagesphere/, crea una carpeta llamada cookies/
  3. Dentro de la carpeta cypress/e2e/engagesphere/cookies/, crea un archivo llamado cookies.feature
  4. Por último, en lenguaje Gherkin, escribe una prueba para el escenario en el que el banner de consentimiento de cookies de la aplicación EngageSphere es aceptado, y otra para cuando es rechazado.
Desde la Cypress App, ejecuta las pruebas para garantizar que tu implementación funciona.

Si la Cypress App no está abierta, usa el comando npm run cy:open para abrirla.

Al ejecutar las pruebas, deberías ver un error indicando que falta la implementación del paso. No te preocupes por eso. Ocurre porque todavía no la implementamos. Lo haremos en la siguiente lección.

Muéstrale al mundo lo que aprendiste 🌎

Para mostrarle a tu red profesional lo que aprendiste en esta lección, publica lo siguiente en LinkedIn.

Estoy haciendo el curso "Pruebas de Extremo a Extremo con Cypress y Cucumber: La Guía Definitiva 🥒" con @Walmyr Lima e Silva Filho en la @Talking About Testing School, donde aprendí sobre el lenguaje Gherkin para escribir pruebas automatizadas con Cypress y Cucumber. #TalkingAboutTesting #TATSchool #Cypress #Cucumber

👨‍🏫 Recuerda mencionarme en tu publicación. Aquí está mi perfil de LinkedIn.

Cuestionario

Pregunta 1 de 2
Puntuación: 0

¿Cuál es el propósito de la palabra clave `Given` en un escenario Gherkin?

Desafío de código

Escribe un archivo feature de consentimiento de cookies

Escribe un archivo feature Gherkin que describa el escenario en el que un usuario acepta el banner de consentimiento de cookies en la aplicación EngageSphere.

Obtén 100% en el cuestionario para continuar