Saltar al contenido

Pruebas de formato, sintaxis y pepinillo en pepino

¿Qué es el idioma de Gherkin?

Pepinillo Es un lenguaje empresarial legible que le ayuda a describir el comportamiento empresarial sin aplicar datos. Es un lenguaje específico de dominio para definir pruebas en formato Cucumber para especificaciones. Utiliza un lenguaje sencillo para describir casos de uso y permite a los usuarios extraer datos lógicos de pruebas de comportamiento.

El texto en idioma Gherkin sirve como documentación y como esqueleto para pruebas automatizadas. El formato de Gherkin se basa en TreeTop Grammar, que está disponible en más de 37 idiomas. Por lo tanto, puede escribir su pepinillo en más de 37 idiomas hablados.

Este script tiene dos propósitos principales:

En este tutorial de pepinillo, aprenderá

¿Por qué Gherkin?

La necesidad de pepinillo se puede explicar fácilmente con las siguientes imágenes.

Antes de pepinillo

Después de pepinillo

Sintaxis Gherkin

Gherkin es un lenguaje orientado a líneas como YAML y Python. Cada línea comienza con un paso y comienza con una palabra clave y termina con una parada. Se utiliza una tabulación o un espacio para la sangría.

En este script, puede comentar en cualquier lugar que desee, pero debe comenzar con un signo #. Lee cada línea después de eliminar las llamadas palabras clave de Grekin, cuándo, entonces, etc.

Los pasos típicos del pepinillo son similares:

Gherkin Scripts: conecta el concepto humano con causa y efecto con el concepto de entradas / procesos / salidas.

Sintaxis de pepinillo:


Feature: Title of the Scenario
Given [Preconditions or Initial Context]
When [Event or Trigger]
Then [Expected output]

El documento Gherkin contiene una extensión .feature y es solo un archivo de prueba con una extensión elegante. Cucumber lee el documento de Gherkin y lo prueba para validar que el software se comporta de acuerdo con la sintaxis de Gherkin.

Términos importantes utilizados en pepinillo

La convención de nomenclatura se utiliza para el nombre de una función. Sin embargo, no hay reglas establecidas en Cucumber sobre los nombres.

Característica:

El archivo debe tener una extensión .feature y cada archivo de características debe tener solo una característica. La palabra clave de la función está con la función: después de lo cual se agregará, se escribirán el espacio y el nombre de la función.

Caso:

Cada archivo de características puede contener varios escenarios, y cada escenario comienza con Escenario: seguido del nombre del escenario.

Fondo:

Una palabra clave de fondo le ayuda a agregar algo de contexto al caso. Puede ser varias etapas del caso, pero la única diferencia es que debe pasarse antes de cada caso.

Dado:

El uso de la palabra clave Given es poner el sistema en un estado familiar antes de que el usuario comience a interactuar con el sistema. Sin embargo, puede omitir las interacciones del usuario en determinados pasos si se le indica en el paso “Precondición”.

Sintaxis:

Given

Given - a test step that defines the 'context
Given I am on "/."

Cuándo:

Cuando el paso es una acción definida por el usuario.

Sintaxis:

When

A When - a test step that defines the 'action' performed
When I perform "Sign In."

Luego:

El uso de la palabra clave ‘entonces’ es el resultado después de la acción en cuándo dar el paso. Sin embargo, solo puede realizar cambios significativos.

Sintaxis:

 Then

Then - test step that defines the 'outcome.'
Then I should see "Welcome Tom."

Y pero

Es posible que haya dado múltiplos de Cuándo o Entonces.

Sintaxis:

But

A But - additional test step which defines the 'action' 'outcome.'
But I should see "Welcome Tom."

And - additional test step that defines the 'action' performed
And I write  "EmailAddress" with "This email address is being protected from spambots. You need JavaScript enabled to view it.."

Dado, cuándo, entonces y, pero son pasos de prueba. Puede usarlos indistintamente. El intérprete no muestra ningún error. Sin embargo, ciertamente no tienen ningún “sentido” cuando se leen.

Términos importantes utilizados en pepinillo


Given The login page is opening
When I input username, password and click the Login button 
Then I am on the Homepage

Ejemplos de pepinillos

Ejemplo 1:


Feature:  Login functionality of social networking site Facebook. 
Given:  I am a facebook user. 
When: I enter username as username. 
And I enter the password as the password 
Then I should be redirected to the home page of facebook 

El caso mencionado anteriormente es de una función llamada inicio de sesión de usuario.

Todas las palabras escritas en negrita son palabras clave Gherkin.

Gherkin analizará cada paso escrito en el archivo de definición de grado. Por lo tanto, los pasos se dan en el archivo de características y el archivo de definición de fase debe ser compatible.

Ejemplo 2:


Feature: User Authentication Background:
Given the user is already registered to the website Scenario:
Given the user is on the login page
When the user inputs the correct email address
And the user inputs the correct password
And the user clicks the Login button
Then the user should be authenticated
And the user should be redirected to their dashboard
And the user should be presented with a success message 

Mejores prácticas para usar Gherkin

Ventajas del pepinillo

Desventajas del pepinillo

Resumen:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *