No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Cypress Avanzado

Curso de Cypress Avanzado

Javier Fuentes Mora

Javier Fuentes Mora

Data Driven Test por medio de Scenarios Outline

22/29
Recursos

¿Cómo utilizar escenarios outline para pruebas dirigidas por datos?

Los escenarios outline son una herramienta poderosa para llevar a cabo pruebas dirigidas por datos. Facilitan la creación de diferentes escenarios de prueba a partir de una misma estructura, cambiando únicamente los datos de entrada. Esto es especialmente útil cuando se gestionan múltiples casos de prueba de manera dinámica y eficiente.

¿Qué es un escenario outline?

Un escenario outline es un tipo especial de prueba que permite reutilizar pasos con diferentes parámetros. En vez de duplicar la lógica para cambios menores en los datos de prueba, se define un único conjunto de pasos con variables, lo cual optimiza el tiempo y el esfuerzo.

Ejemplo de definición de escenario outline

Escenario Outline: Login de usuario
    Dado que el usuario está en la página de login
    Cuando el usuario ingresa el nombre de usuario "<Username>"
    Y la contraseña "<Password>"
    Entonces el sistema debería mostrar el mensaje correcto

Examples:
    | Username    | Password    |
    | user1       | pass1       |
    | user2       | pass2       |
    | user3       | pass3       |

Con este enfoque, cada fila en la tabla de examples representa un caso de prueba diferente, que el sistema ejecutará automáticamente sin necesidad de duplicar código.

¿Cómo reutilizar pasos en los escenarios outline?

Reutilizar pasos puede parecer complicado al principio, pero con la configuración correcta, se vuelve intuitivo:

  • Expresiones regulares: Permiten que los pasos acepten variables sin necesidad de cambios adicionales en la estructura de los scripts.
  • Puedes evitar el uso de comillas alrededor de las variables usando signos de "mayor que" y "menor que" para una comprensión más directa por parte del sistema.

¿Qué ventajas ofrecen los escenarios outline?

  • Reducción de código repetitivo: No necesitas duplicar el código para cada caso de prueba con ligeros cambios en los datos.
  • Escalabilidad: Permite probar múltiples variaciones de datos fácilmente.
  • Mantenimiento simplificado: Menos líneas de código significan menos posibilidades de errores.

Filtrando pruebas con etiquetas en Gherkin

La funcionalidad de etiquetas en Gherkin complementa el uso de escenarios outline, permitiéndote seleccionar y ejecutar pruebas específicas sin necesidad de recorrer todo el conjunto de pruebas.

¿Cómo implementar etiquetas en Gherkin?

Al implementar etiquetas, puedes crear scripts que corran solo pruebas específicas. Por ejemplo, puedes emplear una configuración en tu package.json para definir comandos personalizados. Este método resulta altamente eficiente cuando deseas probar un subconjunto concreto de pruebas o condiciones específicas.

Ejemplo de configuración de script

"scripts": {
    "cucumber:tags": "cypress run --env tags=@probando"
}

Uso de etiquetas para pruebas selectivas

  • Optimización de tiempo: No necesitas ejecutar todo el lote de pruebas cuando solo te interesa una sección.
  • Pruebas precisas: Al asignar etiquetas como @probando, sólo se ejecutan las pruebas que las incluyan.

¿Qué beneficios aportan las etiquetas?

  • Se evita la sobrecarga: Ejecuta solo lo necesario.
  • Flexibilidad: Ajusta tu entorno de pruebas a situaciones particulares sin modificar tu código base.

Con estos conocimientos, puedes optimizar dramáticamente la manera en que realizas pruebas funcionales, haciendo tu proceso más efectivo y con una mejor gestión de tiempo. ¡Continúa explorando estas herramientas para llevar tus habilidades de testing al siguiente nivel!

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Faltaron los link en los recursos

Hola Faltaron los link en los recursos

```js Feature: Login test @probando Scenario: I login with correct credentials Given I am on the login page When I fill in my email and password with "username" and "password" Then I should validate that I'm logged in ```Feature: Login test     @probando    Scenario: I login with correct credentials        Given I am on the login page        When I fill in my email and password with "username" and "password"        Then I should validate that I'm logged in