SlideShare una empresa de Scribd logo
E2E Testing Frameworks:
lo bueno, lo malo y lo feo
Ing. Abel Quintana Lopez
@beloquintana
E2E Testing Frameworks: lo bueno, lo malo y lo feo
¿Qué ha sucedido con los frameworks
de automatización de pruebas en los
últimos años?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Agenda
❏ Arquitectura de frameworks E2E
❏ Frameworks E2E
❏ ¿Cuál framework E2E usar?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
¿Por qué necesitamos conocer la
diferencia entre los frameworks de
pruebas E2E?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Agenda
❏ Arquitectura de frameworks E2E
❏ Frameworks E2E
❏ ¿Cuál framework E2E usar?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Arquitectura de frameworks de automatización
❏ WebDriver
❏ Chrome Devtools Protocol (CDP)
❏ Javascript Injection
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriver
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriver
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriver
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
HTTP
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriver - Lo bueno
❏ W3C Standard soportado por los navegadores web
❏ Maneja el navegador de forma nativa como un usuario real
❏ Permite simular todas las acciones de un usuario
❏ Ejecución local y remota
❏ Ejecución de dispositivos móviles, Smart TV, etc
❏ Protocolo de automatización más usado
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriver - Lo malo
❏ Limitaciones de funcionalidades de automatización
❏ No soporta intercepción en la red
❏ No soporta simulación de velocidad de red
❏ No soporta métricas de performance
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Chrome Devtools Protocol
Chrome Devtools Protocol
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Chrome Devtools Protocol
Chrome Devtools Protocol
Bidireccional
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Chrome Devtools Protocol - Lo bueno
❏ Soporta más funcionalidades automatización
❏ Soporta intercepción en la red
❏ Soporta simulación de velocidad de red
❏ Soporta métricas de performance
❏ Bidireccional
❏ Velocidad
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Chrome Devtools Protocol - Lo malo
❏ Soporta un solo navegador
❏ No soporta ejecución en la nube
❏ Sauce Labs
❏ BrowserStack
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Javascript Injection
Javascript Injection
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Javascript Injection
Javascript Injection
JS
JS
JS
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Javascript Injection - Lo bueno
❏ Se ejecuta en el navegador
❏ Control sobre DOM
❏ Velocidad
❏ Manejo de esperas
❏ Funcionalidades adicionales
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Javascript Injection - Lo malo
❏ No soporta eventos nativos
❏ Limitaciones para automatizar todas las acciones de usuario
❏ No tienen buen soporte para múltiples navegadores
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Arquitectura de frameworks de automatización
❏ WebDriver ❏ CDP ❏ Javascript Injection
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Arquitectura de frameworks de automatización
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Frameworks de automatización
Agenda
❏ Arquitectura de frameworks E2E
❏ Frameworks E2E
❏ ¿Cuál framework E2E usar?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
HTTP
Script
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
HTTP
Script
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver - Lo bueno
❏ Ventajas de WebDriver
❏ W3C Standard soportado por los navegadores web
❏ Maneja el navegador de forma nativa como un usuario real
❏ Permite simular todas las acciones de un usuario
❏ Ejecución local y remota
❏ Integración con herramientas de automatización
❏ Documentación y comunidad de testing extensa
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver - Lo malo
❏ Desventajas de WebDriver
❏ Limitaciones de funcionalidades de automatización
❏ Configuración del proyecto
❏ Drivers
❏ Reportes
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriverIO
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
HTTP
Script
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriverIO
ChromeDriver
GeckoDriver
SafariDriver
EdgeDriver
WebDriver
HTTP
Script
CDP
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriverIO - Lo bueno
❏ Ventajas de WebDriver
❏ W3C Standard soportado por los navegadores web
❏ Maneja el navegador de forma nativa como un usuario real
❏ Permite simular todas las acciones de un usuario
❏ Ejecución local y remota
❏ Ventajas de Chrome Devtools Protocol
❏ Configuración del proyecto, reportes
E2E Testing Frameworks: lo bueno, lo malo y lo feo
WebDriverIO - Lo malo
❏ Documentación
❏ Debug
❏ Soporta solo Javascript
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Puppeteer
Script
Chrome Devtools Protocol
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Puppeteer - Lo bueno
❏ Ventajas de Chrome Devtools Protocol
❏ Soporta intercepción en la red
❏ Soporta simulación de velocidad de red
❏ Soporta métricas de performance
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Puppeteer - Lo malo
❏ Soporta un solo navegador
❏ No soporta ejecución en la nube
❏ Sauce Labs
❏ BrowserStack
❏ Soporta solo Javascript
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Playwright
Script
Chrome Devtools Protocol
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Playwright
Script
Chrome Devtools Protocol
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Playwright - Lo bueno
❏ Ventajas de Chrome Devtools Protocol
❏ Soporta intercepción en la red
❏ Soporta simulación de velocidad de red
❏ Soporta métricas de performance
❏ Soporta múltiples navegadores
❏ Soporta Javascript, Java, C#, Python
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Playwright - Lo malo
❏ Muy nuevo
❏ API está evolucionando
❏ La comunidad no es grande
❏ No soporta ejecución en la nube
❏ Sauce Labs
❏ BrowserStack
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Cypress
https://www.toolsqa.com/cypress/what-is-cypress/
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Cypress- Lo bueno
https://www.cypress.io/
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Cypress- Lo bueno
❏ Developer friendly
❏ Se ejecuta en el navegador
❏ Control sobre DOM
❏ Velocidad
❏ Manejo de esperas
❏ Funcionalidades adicionales
https://docs.cypress.io/guides/overview/key-differences
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Cypress- Lo malo
❏ Se ejecuta en el navegador
❏ No soporta eventos nativos
❏ Limitaciones para automatizar todas las acciones de usuario
❏ Múltiples tabs
❏ Múltiples navegadores al mismo tiempo
❏ Same-origin
❏ Código externo de Javascript
https://docs.cypress.io/guides/references/trade-offs
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Frameworks de automatización
❏ WebDriver ❏ CDP ❏ Javascript Injection
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Framework E2E a seguir
2021
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver 4
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Selenium WebDriver 4
❏ Soporte para Chrome Devtools Protocol
❏ Intercepción de request
❏ Métricas de performance
❏ Simulación de velocidad de red
❏ Mejoras de Selenium Grid
❏ Localizadores relativos
❏ Propuesta de WebDriver BiDi
Agenda
❏ Arquitectura de frameworks E2E
❏ Frameworks E2E
❏ ¿Cuál framework E2E usar?
E2E Testing Frameworks: lo bueno, lo malo y lo feo
https://applitools.com/blog/2020-front-end-automation-testing/
Frameworks más usados - Applitools
5-
4-
3-
2-
1- 75% de los usuarios
41% de crecimiento
10% de crecimiento
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Frameworks más usados
E2E Testing Frameworks: lo bueno, lo malo y lo feo
¿Cuál framework E2E usar?
1. Contexto
2. Frameworks más usados
E2E Testing Frameworks: lo bueno, lo malo y lo feo
¿Cuál framework E2E usar?
1. Scope Automatización
a. Amplio, complejo y largo plazo
2. Múltiples navegadores
1. Javascript
2. Funcionalidades de CDP
1. Flexibilidad y extensibilidad
2. Comunidad
E2E Testing Frameworks: lo bueno, lo malo y lo feo
¿Cuál framework E2E usar?
1. Javascript
2. CDP / Chrome
1. Muy nuevo
2. Futuro
1. Javascript
2. App simple y moderna
3. Colaboración con desarrollo
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Recurso - Testim - Comparación
https://www.testim.io/blog/puppeteer-selenium-playwright-cypress-how-to-choose/
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Cómo seguir...
Abel Quintana Lopez
https://youtube.com/playlist?list=PLQxDOQ6Qm9Uzinj9vTQ4It1Xhl7nDjYGm
E2E Testing Frameworks: lo bueno, lo malo y lo feo
Fórmula - E2E Testing Frameworks
E2E Testing Frameworks:
lo bueno, lo malo y lo feo
Ing. Abel Quintana Lopez
@beloquintana
¡Muchas Gracias!

Más contenido relacionado

La actualidad más candente

Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
SaraEAlcntaraR
 
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrolloFundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
José Antonio Sandoval Acosta
 
Estimacion De Proyecto
Estimacion De ProyectoEstimacion De Proyecto
Estimacion De Proyecto
javier
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
hector_h30
 
DevOps: una breve introducción
DevOps: una breve introducciónDevOps: una breve introducción
DevOps: una breve introducción
Christian Rodriguez
 
Bootstrap
BootstrapBootstrap
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
Franklin Parrales Bravo
 
Ventajas y desventajas de las bdoo
Ventajas y desventajas de las bdooVentajas y desventajas de las bdoo
Ventajas y desventajas de las bdoo
Nerhys Palacios
 
Requerimientos, Ventajas y Desventajas de las aplicaciones web
Requerimientos, Ventajas y Desventajas de las aplicaciones webRequerimientos, Ventajas y Desventajas de las aplicaciones web
Requerimientos, Ventajas y Desventajas de las aplicaciones web
Alonzer Acid Nox
 
Bios ventajas y desventajas
Bios ventajas y desventajas Bios ventajas y desventajas
Bios ventajas y desventajas
Saul Bojorquez
 
Requerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no FuncionalesRequerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no Funcionales
sullinsan
 
Administracion de memoria
Administracion de memoriaAdministracion de memoria
Administracion de memoria
David Rodríguez Gómez
 
Instala y configura software
Instala y configura softwareInstala y configura software
Instala y configura software
Dante Navarrete Zavala
 
Ingeniería del Software de Gestión. Tema 4
Ingeniería del Software de Gestión. Tema 4Ingeniería del Software de Gestión. Tema 4
Ingeniería del Software de Gestión. Tema 4
Enrique Barreiro
 
Front end y Back-end
Front end y Back-end Front end y Back-end
Front end y Back-end
MaryCarmen Rivera González
 
Metodología basada en componentes
Metodología basada en componentes Metodología basada en componentes
Metodología basada en componentes
Anibal Ulibarri
 
Estrategias de aplicaciones para las pruebas de integración
Estrategias  de aplicaciones para las pruebas de integraciónEstrategias  de aplicaciones para las pruebas de integración
Estrategias de aplicaciones para las pruebas de integración
Pablo Navarrete
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
Guillermo Díaz
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Software
Ricardo Mansilla
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
lianabarbosa
 

La actualidad más candente (20)

Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
Tema N° 7 Atributos de Calidad del Software según Norma ISO 25010
 
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrolloFundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
 
Estimacion De Proyecto
Estimacion De ProyectoEstimacion De Proyecto
Estimacion De Proyecto
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
 
DevOps: una breve introducción
DevOps: una breve introducciónDevOps: una breve introducción
DevOps: una breve introducción
 
Bootstrap
BootstrapBootstrap
Bootstrap
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Ventajas y desventajas de las bdoo
Ventajas y desventajas de las bdooVentajas y desventajas de las bdoo
Ventajas y desventajas de las bdoo
 
Requerimientos, Ventajas y Desventajas de las aplicaciones web
Requerimientos, Ventajas y Desventajas de las aplicaciones webRequerimientos, Ventajas y Desventajas de las aplicaciones web
Requerimientos, Ventajas y Desventajas de las aplicaciones web
 
Bios ventajas y desventajas
Bios ventajas y desventajas Bios ventajas y desventajas
Bios ventajas y desventajas
 
Requerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no FuncionalesRequerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no Funcionales
 
Administracion de memoria
Administracion de memoriaAdministracion de memoria
Administracion de memoria
 
Instala y configura software
Instala y configura softwareInstala y configura software
Instala y configura software
 
Ingeniería del Software de Gestión. Tema 4
Ingeniería del Software de Gestión. Tema 4Ingeniería del Software de Gestión. Tema 4
Ingeniería del Software de Gestión. Tema 4
 
Front end y Back-end
Front end y Back-end Front end y Back-end
Front end y Back-end
 
Metodología basada en componentes
Metodología basada en componentes Metodología basada en componentes
Metodología basada en componentes
 
Estrategias de aplicaciones para las pruebas de integración
Estrategias  de aplicaciones para las pruebas de integraciónEstrategias  de aplicaciones para las pruebas de integración
Estrategias de aplicaciones para las pruebas de integración
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Software
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 

Similar a E2E testing frameworks:lo bueno, lo malo y lo feo

Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
Rodrigo Pimentel
 
To mock or not to mock
To mock or not to mockTo mock or not to mock
To mock or not to mock
Eloi Poch
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Jordi Llonch
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Akamon Engineering
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Jordi Llonch
 
Performance de sistemas Angular (Meetup Angular Montevideo)
Performance de sistemas Angular (Meetup Angular Montevideo)Performance de sistemas Angular (Meetup Angular Montevideo)
Performance de sistemas Angular (Meetup Angular Montevideo)
Federico Toledo
 
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Federico Toledo
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Abstracta
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
.. ..
 
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
GeneXus
 
Pruebas automatizadas de aceptación en aplicaciones web
Pruebas automatizadas de aceptación en aplicaciones webPruebas automatizadas de aceptación en aplicaciones web
Pruebas automatizadas de aceptación en aplicaciones web
Giannis Morales
 
Meetup TestingUy 2018 - Selenium en la actualidad
Meetup TestingUy 2018 - Selenium en la actualidadMeetup TestingUy 2018 - Selenium en la actualidad
Meetup TestingUy 2018 - Selenium en la actualidad
TestingUy
 
Meetup TestingUY 2018 - Selenium en la actualidad
Meetup TestingUY 2018 - Selenium en la actualidadMeetup TestingUY 2018 - Selenium en la actualidad
Meetup TestingUY 2018 - Selenium en la actualidad
Centro de Ensayos de Software
 
¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?
Micael Gallego
 
El coste de no usar integración continua
El coste de no usar integración continuaEl coste de no usar integración continua
El coste de no usar integración continua
Cristian Romero Matesanz
 
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
Federico Toledo
 
Conferencia Rails: Integracion Continua Y Rails
Conferencia Rails: Integracion Continua Y RailsConferencia Rails: Integracion Continua Y Rails
Conferencia Rails: Integracion Continua Y Rails
David Calavera
 
Testlink
TestlinkTestlink
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
will2294
 
Taller Evento TestingUY 2018 - Test Automation Gourmet
Taller Evento TestingUY 2018 - Test Automation GourmetTaller Evento TestingUY 2018 - Test Automation Gourmet
Taller Evento TestingUY 2018 - Test Automation Gourmet
TestingUy
 

Similar a E2E testing frameworks:lo bueno, lo malo y lo feo (20)

Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
 
To mock or not to mock
To mock or not to mockTo mock or not to mock
To mock or not to mock
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
 
Performance de sistemas Angular (Meetup Angular Montevideo)
Performance de sistemas Angular (Meetup Angular Montevideo)Performance de sistemas Angular (Meetup Angular Montevideo)
Performance de sistemas Angular (Meetup Angular Montevideo)
 
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
 
Pruebas automatizadas de aceptación en aplicaciones web
Pruebas automatizadas de aceptación en aplicaciones webPruebas automatizadas de aceptación en aplicaciones web
Pruebas automatizadas de aceptación en aplicaciones web
 
Meetup TestingUy 2018 - Selenium en la actualidad
Meetup TestingUy 2018 - Selenium en la actualidadMeetup TestingUy 2018 - Selenium en la actualidad
Meetup TestingUy 2018 - Selenium en la actualidad
 
Meetup TestingUY 2018 - Selenium en la actualidad
Meetup TestingUY 2018 - Selenium en la actualidadMeetup TestingUY 2018 - Selenium en la actualidad
Meetup TestingUY 2018 - Selenium en la actualidad
 
¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?
 
El coste de no usar integración continua
El coste de no usar integración continuaEl coste de no usar integración continua
El coste de no usar integración continua
 
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
Jornada de Calidad 2015 (Universidad ORT, Buenos Aires, Argentina) - Mobile t...
 
Conferencia Rails: Integracion Continua Y Rails
Conferencia Rails: Integracion Continua Y RailsConferencia Rails: Integracion Continua Y Rails
Conferencia Rails: Integracion Continua Y Rails
 
Testlink
TestlinkTestlink
Testlink
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Taller Evento TestingUY 2018 - Test Automation Gourmet
Taller Evento TestingUY 2018 - Test Automation GourmetTaller Evento TestingUY 2018 - Test Automation Gourmet
Taller Evento TestingUY 2018 - Test Automation Gourmet
 

Más de Abel Quintana Lopez

Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOps
Abel Quintana Lopez
 
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
Abel Quintana Lopez
 
Introducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .NetIntroducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .Net
Abel Quintana Lopez
 
Patrones de diseño en la automatización PageObject o ScreenPlay
Patrones de diseño en la automatización PageObject o ScreenPlayPatrones de diseño en la automatización PageObject o ScreenPlay
Patrones de diseño en la automatización PageObject o ScreenPlay
Abel Quintana Lopez
 
Cómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebasCómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebas
Abel Quintana Lopez
 
Ejecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeEjecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nube
Abel Quintana Lopez
 

Más de Abel Quintana Lopez (6)

Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOps
 
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
TestingUY 2019. Patrones de diseño en la automatización PageObject o ScreenPlay.
 
Introducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .NetIntroducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .Net
 
Patrones de diseño en la automatización PageObject o ScreenPlay
Patrones de diseño en la automatización PageObject o ScreenPlayPatrones de diseño en la automatización PageObject o ScreenPlay
Patrones de diseño en la automatización PageObject o ScreenPlay
 
Cómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebasCómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebas
 
Ejecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeEjecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nube
 

E2E testing frameworks:lo bueno, lo malo y lo feo

  • 1. E2E Testing Frameworks: lo bueno, lo malo y lo feo Ing. Abel Quintana Lopez @beloquintana
  • 2. E2E Testing Frameworks: lo bueno, lo malo y lo feo ¿Qué ha sucedido con los frameworks de automatización de pruebas en los últimos años?
  • 3. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 4. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 5. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 6. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 7. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 8. Agenda ❏ Arquitectura de frameworks E2E ❏ Frameworks E2E ❏ ¿Cuál framework E2E usar?
  • 9.
  • 10.
  • 11. E2E Testing Frameworks: lo bueno, lo malo y lo feo ¿Por qué necesitamos conocer la diferencia entre los frameworks de pruebas E2E?
  • 12. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 13. E2E Testing Frameworks: lo bueno, lo malo y lo feo
  • 14. Agenda ❏ Arquitectura de frameworks E2E ❏ Frameworks E2E ❏ ¿Cuál framework E2E usar?
  • 15. E2E Testing Frameworks: lo bueno, lo malo y lo feo Arquitectura de frameworks de automatización ❏ WebDriver ❏ Chrome Devtools Protocol (CDP) ❏ Javascript Injection
  • 16. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriver ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver
  • 17. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriver ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver
  • 18. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriver ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver HTTP
  • 19. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriver - Lo bueno ❏ W3C Standard soportado por los navegadores web ❏ Maneja el navegador de forma nativa como un usuario real ❏ Permite simular todas las acciones de un usuario ❏ Ejecución local y remota ❏ Ejecución de dispositivos móviles, Smart TV, etc ❏ Protocolo de automatización más usado
  • 20. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriver - Lo malo ❏ Limitaciones de funcionalidades de automatización ❏ No soporta intercepción en la red ❏ No soporta simulación de velocidad de red ❏ No soporta métricas de performance
  • 21. E2E Testing Frameworks: lo bueno, lo malo y lo feo Chrome Devtools Protocol Chrome Devtools Protocol
  • 22. E2E Testing Frameworks: lo bueno, lo malo y lo feo Chrome Devtools Protocol Chrome Devtools Protocol Bidireccional
  • 23. E2E Testing Frameworks: lo bueno, lo malo y lo feo Chrome Devtools Protocol - Lo bueno ❏ Soporta más funcionalidades automatización ❏ Soporta intercepción en la red ❏ Soporta simulación de velocidad de red ❏ Soporta métricas de performance ❏ Bidireccional ❏ Velocidad
  • 24. E2E Testing Frameworks: lo bueno, lo malo y lo feo Chrome Devtools Protocol - Lo malo ❏ Soporta un solo navegador ❏ No soporta ejecución en la nube ❏ Sauce Labs ❏ BrowserStack
  • 25. E2E Testing Frameworks: lo bueno, lo malo y lo feo Javascript Injection Javascript Injection
  • 26. E2E Testing Frameworks: lo bueno, lo malo y lo feo Javascript Injection Javascript Injection JS JS JS
  • 27. E2E Testing Frameworks: lo bueno, lo malo y lo feo Javascript Injection - Lo bueno ❏ Se ejecuta en el navegador ❏ Control sobre DOM ❏ Velocidad ❏ Manejo de esperas ❏ Funcionalidades adicionales
  • 28. E2E Testing Frameworks: lo bueno, lo malo y lo feo Javascript Injection - Lo malo ❏ No soporta eventos nativos ❏ Limitaciones para automatizar todas las acciones de usuario ❏ No tienen buen soporte para múltiples navegadores
  • 29. E2E Testing Frameworks: lo bueno, lo malo y lo feo Arquitectura de frameworks de automatización ❏ WebDriver ❏ CDP ❏ Javascript Injection
  • 30. E2E Testing Frameworks: lo bueno, lo malo y lo feo Arquitectura de frameworks de automatización
  • 31. E2E Testing Frameworks: lo bueno, lo malo y lo feo Frameworks de automatización
  • 32. Agenda ❏ Arquitectura de frameworks E2E ❏ Frameworks E2E ❏ ¿Cuál framework E2E usar?
  • 33. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver HTTP Script
  • 34. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver HTTP Script
  • 35. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver - Lo bueno ❏ Ventajas de WebDriver ❏ W3C Standard soportado por los navegadores web ❏ Maneja el navegador de forma nativa como un usuario real ❏ Permite simular todas las acciones de un usuario ❏ Ejecución local y remota ❏ Integración con herramientas de automatización ❏ Documentación y comunidad de testing extensa
  • 36. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver - Lo malo ❏ Desventajas de WebDriver ❏ Limitaciones de funcionalidades de automatización ❏ Configuración del proyecto ❏ Drivers ❏ Reportes
  • 37. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriverIO ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver HTTP Script
  • 38. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriverIO ChromeDriver GeckoDriver SafariDriver EdgeDriver WebDriver HTTP Script CDP
  • 39. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriverIO - Lo bueno ❏ Ventajas de WebDriver ❏ W3C Standard soportado por los navegadores web ❏ Maneja el navegador de forma nativa como un usuario real ❏ Permite simular todas las acciones de un usuario ❏ Ejecución local y remota ❏ Ventajas de Chrome Devtools Protocol ❏ Configuración del proyecto, reportes
  • 40. E2E Testing Frameworks: lo bueno, lo malo y lo feo WebDriverIO - Lo malo ❏ Documentación ❏ Debug ❏ Soporta solo Javascript
  • 41. E2E Testing Frameworks: lo bueno, lo malo y lo feo Puppeteer Script Chrome Devtools Protocol
  • 42. E2E Testing Frameworks: lo bueno, lo malo y lo feo Puppeteer - Lo bueno ❏ Ventajas de Chrome Devtools Protocol ❏ Soporta intercepción en la red ❏ Soporta simulación de velocidad de red ❏ Soporta métricas de performance
  • 43. E2E Testing Frameworks: lo bueno, lo malo y lo feo Puppeteer - Lo malo ❏ Soporta un solo navegador ❏ No soporta ejecución en la nube ❏ Sauce Labs ❏ BrowserStack ❏ Soporta solo Javascript
  • 44. E2E Testing Frameworks: lo bueno, lo malo y lo feo Playwright Script Chrome Devtools Protocol
  • 45. E2E Testing Frameworks: lo bueno, lo malo y lo feo Playwright Script Chrome Devtools Protocol
  • 46. E2E Testing Frameworks: lo bueno, lo malo y lo feo Playwright - Lo bueno ❏ Ventajas de Chrome Devtools Protocol ❏ Soporta intercepción en la red ❏ Soporta simulación de velocidad de red ❏ Soporta métricas de performance ❏ Soporta múltiples navegadores ❏ Soporta Javascript, Java, C#, Python
  • 47. E2E Testing Frameworks: lo bueno, lo malo y lo feo Playwright - Lo malo ❏ Muy nuevo ❏ API está evolucionando ❏ La comunidad no es grande ❏ No soporta ejecución en la nube ❏ Sauce Labs ❏ BrowserStack
  • 48. E2E Testing Frameworks: lo bueno, lo malo y lo feo Cypress https://www.toolsqa.com/cypress/what-is-cypress/
  • 49. E2E Testing Frameworks: lo bueno, lo malo y lo feo Cypress- Lo bueno https://www.cypress.io/
  • 50. E2E Testing Frameworks: lo bueno, lo malo y lo feo Cypress- Lo bueno ❏ Developer friendly ❏ Se ejecuta en el navegador ❏ Control sobre DOM ❏ Velocidad ❏ Manejo de esperas ❏ Funcionalidades adicionales https://docs.cypress.io/guides/overview/key-differences
  • 51. E2E Testing Frameworks: lo bueno, lo malo y lo feo Cypress- Lo malo ❏ Se ejecuta en el navegador ❏ No soporta eventos nativos ❏ Limitaciones para automatizar todas las acciones de usuario ❏ Múltiples tabs ❏ Múltiples navegadores al mismo tiempo ❏ Same-origin ❏ Código externo de Javascript https://docs.cypress.io/guides/references/trade-offs
  • 52. E2E Testing Frameworks: lo bueno, lo malo y lo feo Frameworks de automatización ❏ WebDriver ❏ CDP ❏ Javascript Injection
  • 53. E2E Testing Frameworks: lo bueno, lo malo y lo feo Framework E2E a seguir 2021
  • 54. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver 4
  • 55. E2E Testing Frameworks: lo bueno, lo malo y lo feo Selenium WebDriver 4 ❏ Soporte para Chrome Devtools Protocol ❏ Intercepción de request ❏ Métricas de performance ❏ Simulación de velocidad de red ❏ Mejoras de Selenium Grid ❏ Localizadores relativos ❏ Propuesta de WebDriver BiDi
  • 56. Agenda ❏ Arquitectura de frameworks E2E ❏ Frameworks E2E ❏ ¿Cuál framework E2E usar?
  • 57. E2E Testing Frameworks: lo bueno, lo malo y lo feo https://applitools.com/blog/2020-front-end-automation-testing/ Frameworks más usados - Applitools 5- 4- 3- 2- 1- 75% de los usuarios 41% de crecimiento 10% de crecimiento
  • 58. E2E Testing Frameworks: lo bueno, lo malo y lo feo Frameworks más usados
  • 59. E2E Testing Frameworks: lo bueno, lo malo y lo feo ¿Cuál framework E2E usar? 1. Contexto 2. Frameworks más usados
  • 60. E2E Testing Frameworks: lo bueno, lo malo y lo feo ¿Cuál framework E2E usar? 1. Scope Automatización a. Amplio, complejo y largo plazo 2. Múltiples navegadores 1. Javascript 2. Funcionalidades de CDP 1. Flexibilidad y extensibilidad 2. Comunidad
  • 61. E2E Testing Frameworks: lo bueno, lo malo y lo feo ¿Cuál framework E2E usar? 1. Javascript 2. CDP / Chrome 1. Muy nuevo 2. Futuro 1. Javascript 2. App simple y moderna 3. Colaboración con desarrollo
  • 62. E2E Testing Frameworks: lo bueno, lo malo y lo feo Recurso - Testim - Comparación https://www.testim.io/blog/puppeteer-selenium-playwright-cypress-how-to-choose/
  • 63. E2E Testing Frameworks: lo bueno, lo malo y lo feo Cómo seguir... Abel Quintana Lopez https://youtube.com/playlist?list=PLQxDOQ6Qm9Uzinj9vTQ4It1Xhl7nDjYGm
  • 64. E2E Testing Frameworks: lo bueno, lo malo y lo feo Fórmula - E2E Testing Frameworks
  • 65. E2E Testing Frameworks: lo bueno, lo malo y lo feo Ing. Abel Quintana Lopez @beloquintana ¡Muchas Gracias!