Want to make creations as awesome as this one?

Transcript

La importancia de QA más allá de la calidad

Desktop App

CTRL + F5

Mobile testing

Bugs, backlog, dolores de cabeza...

DevTestops

EMPEZAR

01

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

¿Quién soy?

¿Qué es QA?

Perfiles de QA

Tipos de pruebas

Pruebas E2e

Casos reales

Beneficios QA

DEVTESTOPS

ÍNDICE

ÍNDICE

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.

¿Es Frontend?¿Es QA?

¿Qué es QA?

"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."

Wikipedia

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.

Responsabilidades de QA

Análisis de las historias de usuario

01

Definición y creación del test plan

02

Creación y ejecución de test cases

03

Reporte de bugs

04

Automatización de pruebas

05

Perfiles de QA

  • 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...)

  • 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.

@estefafdez

+ INFO

+ INFO

QA Automation

QA Manual

Tipos de pruebas

¿no es sólo tarea de Qa?

Test funcionales

Test de integración

Test de Rendimiento

Test Unitarios

Lorem ipsum dolor sit amet consecteteur

Lorem ipsum dolor sit amet consecteteur

Lorem ipsum dolor sit amet consecteteur

Lorem ipsum dolor sit amet consecteteur

Test Funcionales

Tipos de test Funcionales

¡Hay más de uno!

Aceptación

Progresión

Regresión

Responsivos

Exploratorios

Herramientas

Selenium

Appium

Cypress

Protractor

[...]

Ejemplo de test E2e

Test con Cypress

Un fallo de software hizo creer al módulo de aterrizaje que estaba en el suelo antes de tiempo.

A los abonados no se les estaba asignando asiento al hacer el alta.

2022

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.

CASOS EN LOS QUE FUE NECESARIO Testear Y NO LO SABÍAN

2022

2016

Misión Exomars

Real Valladolid

Renfe

Declarado como el primer malware auto replicable, afecto a 6000 ordenadores.

Se retiraron más de 400.000 coches por un problema de software, que provocaba un retraso en el sistema anti-bloqueo de frenos.

1999

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.

Otros casos

2010

1988

El gusano de Morris

Error en los frenos de toyota

Efecto 2000

Beneficios de tener QA

Y no es sólo reportar bugs

Reducción de costes

Producto más seguro

Mejora experiencia de usuario

Desarrollo más efectivo y eficiente

Pon un QA en tu vida

04

03

02

01

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

DevTestOPS

Cuando DevOps y QA trabajan juntos

Coverage

Continuous testing

DEVTESTOPS

Manifesto

Testing continuo en lugar de testing al final.

Adoptar todas las posibilidades de prueba en lugar de sólo las pruebas funcionales automatizadas.

Probar lo que da valor en lugar de probarlo todo.

Todos los departamentos hacen pruebas en lugar de delegarlo al departamento de QA.

Cobertura del producto por encima la de cobertura del código.

01

02

03

04

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.

Crear un toolchain

Cómo implementarlo

Hay que aplicar la automatización en cada uno de estos procesos.

Automatización

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.

Implementar las herramientas

Actualizar constantemente las herramientas y los procesos para dar cabida a las tendencias y actualizaciones pertinentes.

Mejora continua

Automatización

Comunicación

Monitorización

Debe haber colaboración entre equipos.

La automatización ayudará a acelerar el proceso.

La pipeline tiene que estar constantemente monitorizada.

Buenas prácticas

Gracias