Muchas veces uno comienza en el mundo del QA, pero no sabe que leer primero o que leer después. Es por ello, que les hice un roadmap, validado también por algunos colegas QAs y se los quería compartir. Existe otro en internet dando vueltas, que se los dejo a mano por si lo quieren ver: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónA continuación les voy a explicar cada Stage hasta lograr convertirse en Head QA.
Stage 1:Entender los findamentos del QA:
- ¿Que es el QA?
- ¿Por que se implementa en los proyectos?
- Ventajas de tener un QA en el equipo
- La importancia de tener QA en los proyectos
- Diferencia entre un QA y un Tester
- Conceptos de caja blanca, negra y gris
Material de estudio:
https://underc0de.org/foro/qa-(quality-assurance)/por-que-es-fundamental-el-qa-en-un-proyecto/ (Por que es fundamental el QA en un proyecto)
https://underc0de.org/foro/qa-(quality-assurance)/introduccion-a-qa-dictado-por-egg/ (Introducción al QA dictado por EGG)
https://underc0de.org/foro/qa-(quality-assurance)/el-abismo-entre-tester-y-qa/ (Tester Vs QA)
Stage 2:Metodologías de trabajo:
- Scrum
- Kanban
- Cascada
- Modelo en V
- XP
Cascada / WaterfallKanbanScrum CompletoScrum Resumido Documentación sobre metodologías: https://underc0de.org/foro/qa-(quality-assurance)/scrum-metodologia-agil/https://underc0de.org/foro/qa-(quality-assurance)/eventos-en-scrum/ (Eventos en Scrum)
Stage 3:Casos de prueba:
- ¿Qué son los casos de prueba?
- ¿Cómo se arman?
- Prioridades de casos de prueba
- Aprender a usar test management tools: XRAY, Zepyr, QMETRY, Excel, Test Link, etc
Creación de casos de pruebaQMETRYXRAY Documentación: https://underc0de.org/foro/qa-(quality-assurance)/test-case-test-suite-test-plan/ (Test cases - Test Suite)
https://underc0de.org/foro/qa-(quality-assurance)/qmetry-desde-cero/ (QMETRY desde cero)
Los enlaces son solo para miembros.
Registrate o
iniciá sesión (Plantilla de test cases de QARMY)
Stage 4:Saber usar issue trackers:
- Saber reportar bugs
- Saber usar Jira, Trello, Monday, Redmine, etc
Reporte de bugs - Buenas prácticasSeveridad - Prioridad y reportes de bugs en Jira Documentación: Los enlaces son solo para miembros.
Registrate o
iniciá sesión (Plantilla de reporte de bugs de QARMY)
Stage 5:Aprender diferentes tecnicas de tests funcionales:
- Pruebas exploratorias
- Sanity testing
- Regresiones
- Smoke testing
- Pruebas de integración
- Pruebas unitarias (A nivel componente)
Stage 6:Pruebas en base de datos:
- SQL
- NoSQL
- Aprender a usar clientes de bases de datos
- Consultas (SELECT, GROUP BY, ORDER BY, INER JOIN, etc)
Stage 7:Testing de APIs
- Testing de APIs REST y SOAP
- Postman
- Swagger
Testing de APIs con Swagger Certificación de Postman desde cero Documentación:https://underc0de.org/foro/qa-(quality-assurance)/testeo-de-apis-con-swagger/ (Testeo de APIs con Swagger)
https://underc0de.org/foro/qa-(quality-assurance)/testeo-de-apis-con-postman/ (Testeo de APIs con Postman)
https://underc0de.org/foro/qa-(quality-assurance)/variables-de-entorno-y-variables-globales-en-postman/ (Variables de entorno y globales en Postman)
https://underc0de.org/foro/qa-(quality-assurance)/pruebas-automatizadas-con-postman/ (Pruebas automatizadas con Postman)
https://underc0de.org/foro/qa-(quality-assurance)/corriendo-colecciones-de-apis-con-newman-y-reporte-en-html/ (Newman y elaboración de reportes)
https://underc0de.org/foro/qa-(quality-assurance)/obtener-todos-los-endopints-de-una-api-en-un-paso-mas-simple-con-postman/ (Exportar endpoints de Swagger)
Stage 8:Aprender a escribir casos de pruebas en BDD.
En este punto ya empezamos a encaminarnos hacia el mundo de la automatización. BDD es una forma de escribir casos de pruebas con el fin de automatizarlos posteriormente.
Stage 9:Testing Mobile:
- Saber diferenciar entre emulador y simulador
- Saber levantar simuladores en la PC (XCODE) para iOS
- Saber usar Browser Stack
- Otras herramientas para emular sistemas operativos en Android: Genymotion, Bluestacks
- Saber la diferencia entre una APP Nativa, PWA y responsive
- Saber testear responsive
- Saber usar CatLog
- Saber usar TestFlight y App Distribution (Firebase)
- Saber realizar Alfa y Beta testing
Stage 10:Testing NO Funcional: Pruebas más técnicas
- Pruebas de Stress
- Pruebas de Performance
- Pruebas de Volumen
- Pruebas de Seguridad
- Pruebas de Accesibilidad
- Pixel Perfect
Documentación: https://underc0de.org/foro/qa-(quality-assurance)/pruebas-de-stress-con-jmeter/ (Pruebas de Stress con JMETER)
https://underc0de.org/foro/qa-(quality-assurance)/estres-de-apis-con-jmeter/ (Stress de APIs con JMETER)
https://underc0de.org/foro/qa-(quality-assurance)/ejecutando-jmeter-desde-la-consola/ (Ejecutando JMETER desde la consola)
Stage 11:Monitoreo y revisión de Logs
Con el fin de que un QA sepa la causa raiz de un problema, es recomendable que sepa revisar logs y monitorear. Algunas aplicaciones para esto son:
- Data Dog
- Grafana
- Crashlytics (Firebase)
- CloudWatch
Stage 12:Uso de repositorio de códigos, con el fin de automatizar posteriormente y mantener el código centralizado en un solo lugar.
Algunas de estas herramientas son:
- GitHub (Github desktop)
- GitLab
- BitBucket
- Saber conceptos de GIT (
Importante)
Stage 13:Fundamentos de programación: No es necesario ser un experto en programación para empezar a automatizar, pero si es necesario tener conceptos de programación para poder hacerlo. Algunos de los lenguajes más utilizados para automatizar son:
- Javascript
- Python
- Java
- C#
Stage 14:Pruebas automatizadas: Estas pruebas se dividen en:
- Automatización Web
- Automatización Mobile
- Automatización de APIs
- Automatización de Aplicaciones Desktop
Tener en cuenta también, que hay frameworks y tecnologías que ya tienen todo pre-armado para no tener que hacer todo de cero. Alguno de ellos son:
- Autoc0de
- Playc0de
- Serenity
- Cypress
- Jasmine
- Playwright
- Robot
- Jest
Estos frameworks funcionan con Selenium, PlayWright, etc.
Taller de Playwright desde ceroCypress desde cero Parte 1Cypress desde cero Parte 2 Automatizaciones con Katalon: https://underc0de.org/foro/qa-(quality-assurance)/pruebas-automatizadas-con-katalon/Autoc0de:Automatizaciones con Autoc0de: https://underc0de.org/foro/testing-automatizado/automatizaciones-con-autoc0de-desde-cero/Autoc0de 2.0 Documentación de métodos https://underc0de.org/foro/testing-automatizado/autoc0de-2-0-web-documentacion-de-metodos/Repo Autoc0de Web: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónRepo Autoc0de Mobile: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónRepo Autoc0de APIs: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónForo Autoc0de: https://underc0de.org/foro/testing-automatizado/Web Autoc0de: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónPlayc0de:Playc0de desde cero: https://underc0de.org/foro/playc0de/playc0de-ejecutando-pruebas-con-playwright-desde-0/Repo Playc0de: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónWeb Playc0de: Los enlaces son solo para miembros.
Registrate o
iniciá sesiónCypress:Comenzando con Cypress: https://underc0de.org/foro/qa-(quality-assurance)/comenzando-con-cypress/Primeras pruebas automatizadas: https://underc0de.org/foro/qa-(quality-assurance)/como-hacemos-pruebas-automatizadas-de-cypress-en-nuestra-interfaz/Crear una nueva especificación con Cypress: https://underc0de.org/foro/qa-(quality-assurance)/crear-nueva-especificacion-con-cypress-primeros-pasos/Crear un ejemplo básico con Cypress: https://underc0de.org/foro/qa-(quality-assurance)/crear-un-ejemplo-real-con-cypress-basico/Creando un nuevo proyecto con Cypress: https://underc0de.org/foro/qa-(quality-assurance)/creando-un-nuevo-proyecto-con-cypress/Ejemplo de Cypress usando ChatGPT: https://underc0de.org/foro/qa-(quality-assurance)/ejemplo-de-cypress-usando-chatgpt/Comparación entre Cypress y Playwright: https://underc0de.org/foro/qa-(quality-assurance)/comparacion-entre-cypress-y-playwright/
Stage 15:Integraciones Continuas: Una vez que tenemos nuestra automatización, es muy recomendable colocarlo en las integraciones continuas para que se corran solas después de cada deploy. Alguna de las tecnologías más utilizadas son:
- Jenkins
- Pipelines
- Travis
- Azure DevOps
Stage 16:Lider de procesos:
Una vez que un QA ya adquirió mucha experiencia, puede ser lider de procesos. Es aquel que entiende del negocio, sobre como implementar QA. Tiene buena comunicación con el cliente, sabe manejar equipos de QA, etc.
En muchas ocasiones, este lider de proceso no tiene todos los conocimientos técnicos mencionados en los demás Stages. Pero si tiene buenas habilidades blandas de comunicación.
Para llegar a este puesto, por lo general es ofrecido por la empresa, o se puede postular en alguna posición abierta de QA Lead de alguna empresa.
Stage 17:Lider Técnico de QA:
Es aquel que ha adquirido a lo largo de los años muchos conocimientos técnicos (Todo lo mencionado anteriormente en este roadmap). Sabe implementar pruebas, sabe que tipo de pruebas hacer, donde hacerlas, etc.
También sabe liderar equipos y enseñar habilidades técnicas a otros miembros del equipo.
Stage 18:Head QA: Es la persona que coordina toda el área de QA. Suele verse en empresas muy grandes en donde hay varios equipos de QA.
Documentación importanteModelo de plan de pruebas de QARMY: https://underc0de.org/foro/qa-(quality-assurance)/modelo-de-plan-de-pruebas-qarmy/Glosario de QA: https://underc0de.org/foro/qa-(quality-assurance)/glosario-para-qas-componentes-web-y-mobile/Preguntas de entrevista: https://underc0de.org/foro/qa-(quality-assurance)/mi-primera-entrevista-laboral-!/Preguntas básicas de entrevistas QA: https://underc0de.org/foro/qa-(quality-assurance)/preguntas-basicas-para-una-entrevista-qa/Bueno, esto es todo por ahora! Espero que les guste y les sirva!
Con el tiempo voy a seguir actualizando este post con más material!