Testing, cobertura y calidad de software
Construye una estrategia de testing más allá del framework: pirámide de tests, qué cubrir con unitarios, integración y E2E, cobertura con criterio, análisis estático y puertas de calidad en el pipeline de CI.
- Nivel
- Intermedio
- Duración
- 16 horas
- Modalidades
- Online en directo · In-company · A medida
- Dirigido a
- Desarrolladores y responsables técnicos que quieren una estrategia de testing con criterio.

¿Qué es este curso y por qué te interesa?
Muchos equipos saben escribir tests y aun así tienen un problema de testing: suites lentas que nadie ejecuta, tests frágiles que se rompen con cada refactor, una cifra de cobertura que se persigue sin saber por qué y bugs que siguen llegando a producción. El problema no suele ser el framework, sino la ausencia de estrategia: qué probar, en qué nivel, con qué profundidad y qué dejar deliberadamente sin cubrir.
Este curso trabaja esa capa de decisión. Se parte de la pirámide de tests y sus variantes para repartir el esfuerzo entre unitarios, integración y end-to-end con criterio económico: cada nivel tiene un coste de escritura, ejecución y mantenimiento, y la mezcla correcta depende del sistema. Se profundiza en el diseño de buenos tests —independientes, legibles, rápidos y que fallan por la razón correcta— y en el uso honesto de los dobles de prueba.
La segunda mitad conecta el testing con la calidad como sistema: cobertura interpretada con criterio (qué dice, qué no dice y por qué el 100% no es un objetivo), análisis estático y quality gates, la suite integrada en el pipeline de CI con tiempos razonables y las métricas que de verdad indican calidad. El curso es agnóstico de lenguaje: los ejemplos se muestran en Java, Python y TypeScript, y los cursos específicos de JUnit o pytest cubren la herramienta en profundidad.
Capacidades que adquirirás
- Diseñar una estrategia de testing completa: qué probar en cada nivel y qué no probar.
- Escribir tests unitarios y de integración mantenibles, con dobles de prueba usados con criterio.
- Interpretar la cobertura correctamente y fijar umbrales útiles en lugar de cifras rituales.
- Integrar análisis estático y quality gates en el flujo de trabajo del equipo.
- Montar la suite en CI con tiempos de ejecución razonables y feedback rápido.
Objetivos del curso
- 01Repartir el esfuerzo de testing entre unitarios, integración y E2E según coste y valor.
- 02Dominar las propiedades de un buen test: independencia, legibilidad, velocidad y precisión del fallo.
- 03Usar mocks, stubs y fakes sabiendo qué distorsiona cada uno y cuándo evitarlos.
- 04Combinar cobertura de líneas y ramas con técnicas como mutation testing para medir la calidad real de la suite.
- 05Configurar análisis estático y puertas de calidad que el equipo respete.
- 06Definir la estrategia de testing de un proyecto real como entregable final.
¿Es este curso para ti o para tu equipo?
Desarrolladores y responsables técnicos que quieren una estrategia de testing con criterio.
Desarrolladores que ya escriben tests
Programadores que conocen su framework de testing pero quieren criterio para decidir qué probar, cuánto y en qué nivel.
Tech leads y responsables de calidad
Perfiles que definen la estrategia de testing del equipo y necesitan umbrales, métricas y puertas de calidad defendibles.
Equipos con suites heredadas problemáticas
Equipos cuya suite es lenta, frágil o poco fiable y necesitan un plan para recuperar la confianza en ella.
Temario completo
Programa estructurado en módulos. Cada itinerario in-company se ajusta al nivel y a los objetivos concretos del equipo.
- Síntomas: suites lentas, tests frágiles y cobertura sin confianza.
- El test como inversión: coste de escritura, ejecución y mantenimiento.
- La pirámide de tests y sus variantes: trophy, honeycomb y cuándo aplica cada una.
- Qué no probar: código trivial, frameworks y detalles de implementación.
Cómo se imparte
Práctica desde la primera sesión
Cada bloque combina explicación, demostración y laboratorio. Los alumnos trabajan sobre casos reales aplicables a su contexto profesional.
Casos de cliente
En programas in-company partimos de los procesos y datos del cliente. La formación deja de sonar genérica y empieza a resolver problemas concretos.
Materiales de apoyo
Los participantes reciben código, plantillas y guías reutilizables tras la formación. Lo que se aprende se mantiene en el día a día.
Adaptación al nivel del equipo
Antes de impartir, hacemos un breve diagnóstico y ajustamos profundidad y ritmo. La formación no se queda corta ni avanza por encima del grupo.
Modalidades disponibles
Cada formato puede adaptarse al ritmo y al contexto operativo de la organización.
Online en directo
Sesiones en streaming con interacción en vivo, ejercicios guiados y resolución de dudas.
In-company
Programa diseñado a medida y impartido para un único equipo o organización.
A medida
Itinerario completamente personalizado: temario, duración, formato y casos del cliente.
¿Por qué contratar este programa para tu equipo?
La formación no se diseña contra un examen, se diseña contra un objetivo de negocio.
- Mejora de productividad real en el puesto de trabajo.
- Actualización de competencias clave para el negocio.
- Mayor autonomía técnica y reducción de dependencia externa.
- Aplicación práctica inmediata sobre procesos del cliente.
- Mejor adopción tecnológica con criterios profesionales.
- Preparación para proyectos de IA, datos, automatización o desarrollo.
¿Se puede gestionar como formación bonificada?
Este curso puede plantearse como formación para empresas y, según las condiciones de cada organización, podría gestionarse dentro de iniciativas de formación bonificada. En DatIACode te ayudamos a estructurar la propuesta formativa y la documentación necesaria para su valoración.
¿Qué necesitas saber antes de empezar?
- Experiencia desarrollando software en algún lenguaje (Java, Python, JavaScript/TypeScript, C# o similar).
- Haber escrito tests unitarios básicos con algún framework.
- Familiaridad con Git y con algún sistema de integración continua recomendable.
Cómo se aplica lo aprendido
- Definición de la estrategia de testing de un producto o servicio nuevo.
- Saneamiento de suites lentas o frágiles que el equipo ha dejado de ejecutar.
- Establecimiento de umbrales de cobertura y quality gates con sentido.
- Reducción de bugs en producción mediante cobertura de las zonas críticas.
- Integración del testing en pipelines de CI con feedback rápido.
- Criterios objetivos de calidad para revisiones de código y definición de hecho.
Por qué elegir DatIACode
No vendemos formación: diseñamos programas que se traducen en capacidad operativa real.
Experiencia aplicada
Más de 20 años combinando consultoría, desarrollo y formación tecnológica para empresas de distintos sectores.
Visión de negocio
Cada programa parte de los objetivos del cliente. La técnica está al servicio del problema, no al revés.
Adaptación al equipo
Ajustamos profundidad, ritmo y casos de uso al nivel real del equipo tras un breve diagnóstico inicial.
Formación + consultoría
Si la formación destapa un proyecto, podemos acompañarte en su implantación. No abandonamos el resultado.
Especialización en IA
Trabajamos en IA aplicada todos los días. La formación no la imparte alguien que solo enseña, la imparte alguien que también construye.
Orientación a resultados
Entregables tangibles y métricas pactadas. Sin promesas vacías.
FAQ
Aquellos enseñan la herramienta en profundidad dentro de su ecosistema; este curso trabaja la capa de decisión que está por encima: qué probar, en qué nivel, cómo medir la calidad de la suite y cómo integrarla en CI. Son complementarios: la estrategia se aprende aquí y la mecánica fina del framework, en el curso específico.
Cuéntanos qué necesitas
Te respondemos en menos de 24h laborables con disponibilidad, opciones de modalidad y propuesta a medida si aplica.
- Diagnóstico inicial sin compromiso.
- Propuesta adaptada al nivel y al sector.
- Asesoramiento sobre formación bonificada.
Cursos relacionados
Ver todos los cursos- Ver curso
Programación24 horasTesting en Java con JUnit, Mockito y TDD
- Ver curso
Programación16 horasTesting en Python con Pytest
- Ver curso
Programación16 horasClean Code para desarrolladores
