Cypress vs. Selenium

2/23
Recursos

Aportes 10

Preguntas 1

Ordenar por:

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

o inicia sesión.

Para mi una de las características más fuertes de Cypress es la de retry-ability, la cual consiste en el runner reintentará alguna prueba que haya fallado.

Al día del hoy dos de estos Treade-Off

  • Multi tabs
  • Same-origin
    ya son posibles de hacer con Cypres versión 10, liberada recientemente

Cypress Framework E2E Testing

Como fue descrito en esta sesión, Cypress es una herramienta enfocada en la practicidad para la planeación y ejecución de pruebas, permitiendo correr y evaluar casos de usos que uno pudiera enfrentar en un desarrollo mediante web.
.

.
De la imagen podemos observar el stack tecnológico que engloba Cypress para el cual, en su documentación How It Works, se enfoca en la versatilidad a la gama amplia de escenarios.
.
Siendo un Framework, permite el desarrollo mediante el enfoque Test-Driven-Development TDD, agilizando el desarrollo de soluciones enfocadas a las pruebas.
.

Características de Cypress

Si bien. se mencionan varias en la sesión, en definitiva me quedo con la siguiente:
.

La mayoría de las herramientas de prueba, funcionan ejecutándose fuera del navegador ejecutando comando remotos. Cypress, a su vez, ejecuta el mismo ciclo de aplicación mediante un proceso de NodeJS permitiendo la comunicación síncrona para con las tareas que se realizan en curso.

.
De eso, podemos menciona que Cypress opera en la capa de red al leer y alterar el trafico de la web en curso, exponiendo dicha capa para con un proceso de automatización, brindando resultados más consistentes con nuestra área de Quality-Assurance QA.
.
Desarrollar con pruebas permitirá minimizar el radio de explosión de nuestra deuda técnica, enshurando nuestro código para futuros cambios.

Comprarcion entre Cypress y Selenium
selenium soporta todos los navegadores, cypress no.
cypress soporta solo JavaScript y TypeScripts y selenium es mas amplio.
Ambos son gratuitos en ciertas partes.
Cypress nos da reportes completos pero selenium tienes que elaborarlos así que lo hace mas rápido.

Caracteristicas:

  • Viajes en el tiempo: nos permite ver nuestra prueba y como se ejecuto cada paso.

  • Depuracion de Errores

  • Espera automáticamente por los elementos

  • Spies, Stubs ando Clocks(Espias, Trozos y Relojes): son mas útiles para pruebas unitarias por que nos permite mockear ciertas funciones, espiar en ellas para ver cuando se ejecutan, si son llamadas etc.

  • Control de trafico de red: Se puede ir viendo que peticiones se hicieron en la red y todos sus estados(fallido, exitoso)

  • Resultados Consistentes: que cypress trata de atacar en en forma contundente los fields Items.

  • Nos ofrece captura de pantalla directamente de la red

Cypress ya da soporte de Safari por medio de Webkit, aún está en fase experimental. Aquí pueden ver más información sobre los navegadores soportados:

https://docs.cypress.io/guides/guides/launching-browsers#WebKit-Experimental

Alguien se percato del mouse del profesor me da curiosidad el saber si es recomendable

no conozco ninguna otra diferencia, pero me pareció bastante interesante que comparara una herramienta con otra.

Dejare esto por aquí y me retiraré lentamente…
https://sorry-cypress.dev/
(Alternativa al dashboard pagado de Cypress)

Hay una cosa que sale a relucir, es una gran desventaja para mi de cypress, es el tema de los dominios, al menos 2 proyectos en los que tengo en mente implementarlo necesitan cambiar de dominio, para pruebas puntuales dentro de la app es bueno, pero necesito más interacción con otras webapps, igual me lo piden y es muy útil tener el curso, espero aprender ambos, cypress y selenium para darle a cada uno sus aplicaciones correspondientes