Obtén 100% en el cuestionario para continuar
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
Featuredefine la funcionalidad bajo prueba - La palabra clave
Scenariodescribe el escenario, o caso de prueba - La palabra clave
Givendefine la precondición de la prueba, es decir, el estado inicial para que ese escenario sea probado - La palabra clave
Whendefine la acción (o acciones) que ejercita la aplicación bajo prueba para un escenario dado - La palabra clave
Thendefine 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
Andes un alias deGiven,WhenoThen, 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: LoginScenario
Describe un único caso de prueba, representando un comportamiento específico de la funcionalidad.
Sintaxis:
Scenario: <description>Ejemplo:
Scenario: successful loginGiven
Define el estado inicial o la precondición para que el escenario sea probado.
Sintaxis:
Given <step description>Ejemplo:
Given I access the Login formWhen
Define la acción o evento que ejercita la funcionalidad bajo prueba.
Sintaxis:
When <step description>Ejemplo:
When I submit it with valid credentialsThen
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 availableAnd
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 visibleEjercicio 🎯
- Dentro de la carpeta
cypress/e2e/, crea una carpeta llamadaengagesphere/ - Dentro de la carpeta
cypress/e2e/engagesphere/, crea una carpeta llamadacookies/ - Dentro de la carpeta
cypress/e2e/engagesphere/cookies/, crea un archivo llamadocookies.feature - 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 comandonpm run cy:openpara 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
¿Cuál es el propósito de la palabra clave `Given` en un escenario Gherkin?
Desafío de código
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