top of page

Callbacks en Cypress: ¿Qué brujería es esa?

Hoy alguien me preguntó en Twitter sobre los Callbacks y Cypress. ¿Se relacionan? ¿Cómo lo hacen? ¡Bueno, de eso, queridos Free Range Testers, vamos a hablar en este post!


En JavaScript, un Callback es una función que se pasa como un argumento a otra función, que luego se invoca en algún momento posterior. Este es un patrón común en JavaScript y se utiliza para permitir que una función responda a eventos o realice alguna otra acción después de que otra función haya completado su trabajo.


Para los que no lo conocen, Cypress es un framework E2E (¡como ya sabrán los que hicieron mi curso en Udemy!) en JavaScript que se puede utilizar para probar aplicaciones web. Una de las principales características de Cypress es su capacidad para interactuar con una página web de una manera que simula cómo un usuario real interactuaría con la página, además de contar con los métodos necesarios para interactuar con APIs. Esto se logra a través de una serie de comandos que proporciona Cypress, como "cy.get()" y "cy.click()", que se pueden utilizar para seleccionar elementos en la página y realizar acciones en ellos.


A menudo se utilizan los llamados Callbacks en Cypress para asegurar que los comandos se ejecutan en el orden correcto y que la prueba solo continúa una vez que se ha completado un comando anterior. Por ejemplo, los comandos de Cypress son asíncronos de forma por defecto, por lo que es posible utilizar una función del tipo Callback para asegurar que la prueba solo continúa con el siguiente paso una vez que se ha completado el comando anterior.

Por ejemplo:

</