Introducción a Cypress: ventajas, desventajas

Fernanda Jimenezh
Pragma
Published in
2 min readDec 12, 2023

¿Qué es cypress?

“Cypress es una herramienta de prueba front-end de próxima generación creada para la web moderna”. Este framework de automatización de pruebas permite automatizar tanto pruebas a servicios como front-end. Está pensada para probar aplicaciones web que son construidas con frameworks de JavaScript modernos.

Como QA o desarrollador podemos hacer con cypress pruebas end-to-end, de componente, integración y unitarias. Claro está que es más utilizada para las e2e, ya que para pruebas unitarias contamos con otras herramientas más populares entre los desarrolladores.

Si te preguntas ¿Qué test puedo automatizar con cypress? La respuesta es, todo lo que se ejecute en un navegador web. Podemos realizar la configuración de las pruebas, los scripts, su ejecución y depuración.

En esta serie de artículos sobre cypress, se mencionará próximamente sobre los patrones de diseño, ya que se puede trabajar con cypress la estrategia de desarrollo BDD utilizando el lenguaje gherkin en Screenplay, también podemos trabajar POM(Page Object Model) o simplemente utilizar la estructura de comandos que proporciona cypress.

Ventajas:

  • Es una herramienta para realizar pruebas de extremo a extremo, pruebas de componentes, pruebas de integración y pruebas unitarias.
  • Es fácil de instalar, tiene una curva de aprendizaje rápida, se registran las acciones realizadas y se puede ir hacia adelante y atrás de la ejecución de las pruebas (time travel), genera reportes concretos y su documentación es actualizada y amplia.
  • Tiene “built-in-tools” que entrega inmediatamente todas las herramientas necesarias para automatizar, no hay que agregar drivers, nos permite utilizar varios navegadores como chrome, firefox, edge, y para ios se tiene la versión experimental que simula safari.
  • Permite escribir pruebas “más rápidas, fáciles y confiables”.

Desventajas:

  • No permite la automatización de aplicaciones mobile.
  • No permite interactuar con más de 1 tab, en varias situaciones existen alternativas para mitigar la necesidad de usar varios tabs.

Ambiente:

Documentación de cypress:

--

--