La importancia de QA más allá de la calidad
Belén Montes
Created on September 29, 2022
More creations to inspire you
BASIL RESTAURANT PRESENTATION
Presentation
AC/DC
Presentation
ENGLISH IRREGULAR VERBS
Presentation
ALL THE THINGS
Presentation
SANTIAGOVR_EN
Presentation
WWII TIMELINE WITH REVIEW
Presentation
BLENDED LEARNING
Presentation
Transcript
01
EMPEZAR
DevTestops
Bugs, backlog, dolores de cabeza...
Mobile testing
CTRL + F5
Desktop App
La importancia de QA más allá de la calidad
ÍNDICE
ÍNDICE
DEVTESTOPS
Beneficios QA
Casos reales
Pruebas E2e
Tipos de pruebas
Perfiles de QA
¿Qué es QA?
¿Quién soy?
¿Es Frontend?¿Es QA?
Soy Belén, QA Engineer en Voicemod desde hace 2 años.Empecé a trabajar en el sector del software hace 8 años aunque no empecé como QA sino como FE.Hace 5 años sentí la llamada del lado oscuro de la fuerza y empecé a meter cabeza en todo lo referente en QA y automatización.
¿Qué es QA?
Wikipedia
"El aseguramiento de la calidad es el conjunto de actividades planificadas y sistemáticas aplicadas en un sistema de gestión de la calidad para que los requisitos de calidad de un producto o servicio sean satisfechos."
Es el procedimiento para asegurar la calidad de un producto o servicio.El objetivo que persigue es probar y asegurar el adecuado funcionamiento del producto o servicio acorde a los requisitos especificados.
05
Automatización de pruebas
04
Reporte de bugs
03
Creación y ejecución de test cases
02
Definición y creación del test plan
01
Análisis de las historias de usuario
Responsabilidades de QA
QA Manual
QA Automation
+ INFO
+ INFO
@estefafdez
- Revisar y analizar las especificaciones de las pruebas.
- Definir los casos de prueba y los planes de prueba.
- Ejecutar los casos de prueba y analizar los resultados.
- Informar de los fallos y errores al equipo de desarrollo.
- Escribir código limpio y de alta calidad que pruebe las funcionalidades del producto automáticamente.
- Registrar y documentar los errores.
- Identificar casos específicos para ser automatizados.
- Colaborar con equipos multifuncionales (desarrollo, producto...)
Perfiles de QA
Test Unitarios
Test de Rendimiento
Test de integración
Test funcionales
¿no es sólo tarea de Qa?
Tipos de pruebas
Test Funcionales
Exploratorios
Responsivos
Regresión
Progresión
Aceptación
¡Hay más de uno!
Tipos de test Funcionales
[...]
Protractor
Cypress
Appium
Selenium
Herramientas
Ejemplo de test E2e
Test con Cypress
Renfe
Real Valladolid
Misión Exomars
2016
2022
CASOS EN LOS QUE FUE NECESARIO Testear Y NO LO SABÍAN
Se produjo un fallo en la actualización de los sistemas y dejó a toda cataluña sin trenes de Rodalies y larga distancia durante 8h.
2022
A los abonados no se les estaba asignando asiento al hacer el alta.
Un fallo de software hizo creer al módulo de aterrizaje que estaba en el suelo antes de tiempo.
Efecto 2000
Error en los frenos de toyota
El gusano de Morris
1988
2010
Otros casos
Se esperaba que el bug Y2K paralizase al mundo a la medianoche del 1 de enero 2000, debido a que en muchos desarrollos se había omitido la centuria en el año, asumiendo que funcionaría sólo durante los años que comenzaran con 19XX.
1999
Se retiraron más de 400.000 coches por un problema de software, que provocaba un retraso en el sistema anti-bloqueo de frenos.
Declarado como el primer malware auto replicable, afecto a 6000 ordenadores.
Y no es sólo reportar bugs
Beneficios de tener QA
01
02
03
04
Pon un QA en tu vida
Desarrollo más efectivo y eficiente
Mejora experiencia de usuario
Producto más seguro
Reducción de costes
Continuous testing
Coverage
Cuando DevOps y QA trabajan juntos
DevTestOPS
Cobertura del producto por encima la de cobertura del código.
Todos los departamentos hacen pruebas en lugar de delegarlo al departamento de QA.
Probar lo que da valor en lugar de probarlo todo.
Adoptar todas las posibilidades de prueba en lugar de sólo las pruebas funcionales automatizadas.
Testing continuo en lugar de testing al final.
Manifesto
DEVTESTOPS
Mejora continua
Actualizar constantemente las herramientas y los procesos para dar cabida a las tendencias y actualizaciones pertinentes.
Implementar las herramientas
Hay que enseñar a los equipos a usar estas herramientas de forma eficaz.Se asigna el rol de tester a personas de diversos equipos.
Automatización
Hay que aplicar la automatización en cada uno de estos procesos.
Cómo implementarlo
Crear un toolchain
Jira, Kubernetes, Selenium, GitHub y Jenkins, entre otras. Se asigna funciones a los diferentes equipos que utilizan estas herramientas para que puedan trabajar eficazmente con ellas.
04
03
02
01
Buenas prácticas
La pipeline tiene que estar constantemente monitorizada.
La automatización ayudará a acelerar el proceso.
Debe haber colaboración entre equipos.
Monitorización
Comunicación
Automatización
Gracias