¿Qué es End-to-End Testing?

2/24
Recursos

End-To-End testing (en inglés: pruebas de extremo a extremo), también conocido como E2E, hacen referencia a una metodología que comprueba el funcionamiento de toda una aplicación, de principio a fin (de ahí el nombre end-to-end), para garantizar que el flujo de la aplicación funcione como se esperaría ante la interacción de un usuario real.

Cómo funciona el End-To-End testing

Esta metodología intenta simular desde el punto de vista del usuario cómo se comportaría la aplicación en condiciones normales y reales. Para lograrlo, programamos la interacción del usuario con un navegador y verificamos el funcionamiento de principio a fin del proceso. Con este propósito, podemos utilizar herramientas como Cypress, entre otras.

Para definir End-to-End Testing de manera correcta, es necesario definir primero otros conceptos:

Qué es Testing

Es un proceso o un método de trabajo que se emplea para identificar fallas en el software o producto con el fin de que este alcance un grado aceptable de madurez y estabilidad incluso antes de ser lanzado.

Niveles y la pirámide del Testing

De acuerdo del nivel de complejidad y elementos que la componen, existe una pirámide de testing, compuesta de varios niveles:

piramide tests.png

Unit Test o Pruebas Unitarias

Permiten probar los elementos más fundamentales del software como objetos, funciones, eventos, entre otros.

Component Tests o Pruebas de Componentes

Permiten identificar fallas en componentes que incluyen varias funciones o elementos internos.

Integration Tests o Pruebas de Integración

Permiten probar el comportamiento y posibles fallas en la interacción entre los componentes entre sí, y demás elementos del software.

GUI Tests o End-to-end Tests

Nos ayudan a identificar fallas en la interfaz de usuario. Es en este nivel de pruebas es el más sofisticado, pues depende de los otros niveles de tests y una combinación de sus funciones.

Características del End-to-end Testing

  • Prueba todo el flujo del software desde el punto de vista del usuario final.
  • Prueba el software desde la interfáz de usuario y no desde el código interno.
  • Está enfocado en detectar posibles problemas que pudieran encontrar nuestros usuarios en su interacción con el flujo general del programa.

Aportes 21

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Excelente que Platzi comience a implementar cursos de Testing.

Bien resumido el concepto sobre lo que es el End To End Testing, se ve que vamos a aprender muy bien como usar este nuevo conocimiento y la herramienta (Cypress).

Puedo agregar, que en algunos lugares se le conoce al End To End Testing como BlackBox Testing (o Testing de Caja Negra), ya que se prueba directamente sobre la interfaz gráfica, como un usuario final y sin tener conocimiento de como esta compuesto el código internamente, de modo que solo se prueba la funcionalidad del mismo.

A los que recién llegan a este curso… El curso está genial… pero el proyecto está obsoleto.
Por si les sirve, les dejo mi repo de Platzi Movies (frontend) donde apliqué todo lo descrito en el curso.

GitHub Platzi Movies Frontend

Si requieren el backend… igual les dejo el repo para que lo publiquen alguna plataforma (ya está listo para subirse a Vercel)

GitHub Platzi Movies API
O … si lo prefieren… acá esta mi API publicada en vercel:

https://platzi-movies-cypress-test-5uo3iul4w.vercel.app
Usen esta API Key:
af65b8313be1faea30f21b77d827a43c8d4fbcd1ee4e033364f59e0cf430666f

Estas dos variables (API URL y API KEY) se deben agregar al .env del frontend.

Espero les sea de utilidad.

⚛️ Si has hecho el curso de react avanzado intenta implementar las pruebas en la aplicación desarollada 👌
.
Aprenderas mucho!

Seria excelente si Platzi implementara una ruta o escuela de automatización así com hace Test Automation University pero en español por lo menos
con Selenium, Cypress y Playwright que está muy popular: https://testautomationu.applitools.com/learningpaths.html

Vamo a darle

Empecemos este curso, soy usuario de Selenium Java y quiero conocer nuevas herramientas que mejore mi calidad como ingeniero para realizar testing.

Emocionado por aprender!!!
Este profesor es muy bueno he tomado otros de sus cursos

¿Que es testing?

Acabo de aplicar para un trabajo y este curso me cae como anillo al dedo

👏

Comprendo que end-to-end nos hara ver todo desde el punto de vista de quien realmente va a manejar el aplicativo/la aplicacion. Es interesante ver como ha venido siendo la integracion de un pensamiento mas ‘testeado’

Excelente. Let’s do it…

soy el primer alumno ? :v

Con esta curso se puede aplicar TDD?

Testing es un proceso para mejorar software dándole una estabilidad.

  • Unit testing
  • Prueba de componentes
  • Integración
  • End-to-end

End-To-End
Se realza las pruebas desde el punto de vista del usuario

Este curso creo que ya es más avanzado! Primero tomare express!

Retomando 😃

vamos!

buen profe 😃 don’t worry… be Hapi XD

Muchas gracias por la bienvenida instructor Adrián y es todo un gusto ser parte de otro de sus cursos.