Pruebas y calidad de software
8 guías · unas 1 hora de lectura
Esta página se tradujo del inglés con ayuda de IA y se cotejó con el original. Leer la versión en inglés
Las pruebas son lo que permite a un equipo conservar la libertad de cambiar el código. Esta materia cubre los fundamentos del diseño y los niveles de prueba, las pruebas unitarias prácticas con JUnit 5 y Mockito, el desarrollo guiado por pruebas y por comportamiento, las pruebas de integración con dependencias reales, las pruebas de rendimiento, cómo plantear una estrategia de automatización que compense su coste y las herramientas de análisis estático que detectan defectos antes de ejecutar una sola prueba.
A quién va dirigido
- Desarrolladores que quieren escribir mejores pruebas
- Ingenieros de QA que pasan a la automatización
- Equipos que introducen TDD o BDD
Ruta de aprendizaje
Léelas en orden para seguir un curso completo o elige el tema que necesites.
- 1Fundamentos del testing de software: niveles, técnicas y el vocabulario que divideNiveles de prueba, pruebas funcionales y no funcionales, caja negra y blanca, técnicas de diseño, la pirámide, ciclo de vida de defectos y criterios de salida.Principiante12 min de lectura
- 2Pruebas unitarias en Java con JUnit 5 y Mockito 5Tests unitarios que sobreviven al refactoring: ciclo de vida de JUnit 5, aserciones, tests parametrizados y anidados, AssertJ, dobles de prueba y Mockito.Principiante8 min de lectura
- 3TDD en Java: un kata completo y una valoración honestaRed, green, refactor aplicado a un problema real en Java, cómo el test-first cambia el diseño, outside-in frente a inside-out y dónde flaquea el TDD.Intermedio9 min de lectura
- 4Behaviour-driven development con Cucumber y GherkinBDD como práctica de conversación: example mapping, sintaxis Gherkin, step definitions en Java, documentación viva y los antipatrones que debes evitar.Intermedio7 min de lectura
- 5Tests de integración con dependencias reales: Testcontainers, WireMock y contratosPrueba fronteras reales: bases de datos en contenedores, aislamiento de estado, HTTP simulado con WireMock, broker y contratos guiados por el consumidor.Intermedio10 min de lectura
- 6Estrategia de automatización de pruebas: qué automatizar, a qué coste, sin trampasElige qué automatizar, estructura una suite por capas para un feedback rápido, gestiona los tests inestables y usa cobertura y quality gates sin maquillarlos.Avanzado12 min de lectura
- 7Las pruebas de rendimiento como disciplina: SLO, benchmarks con JMH y controles en CIEl lugar del rendimiento en una estrategia de pruebas: SLO que pueden romper un build, benchmarks JMH honestos, profiling y controles de regresión en CI.Intermedio10 min de lectura
- 8Calidad de código y análisis estático: Error Prone, SpotBugs, PMD y SonarQubeQué detecta el análisis estático que los tests nunca verán, en qué se diferencian las herramientas, en qué métricas confiar y cómo adoptarlo en código legacy.Intermedio11 min de lectura
Sigue con
Programación en JavaDe los objetos y las colecciones a las lambdas, los streams, la concurrencia y los patrones de diseño: lo esencial de Java para todo desarrollador backend.13 guías →Spring Boot y Spring CloudCrea, configura, documenta, prueba y despliega servicios listos para producción con Spring Boot, Spring Data, Spring Batch y Spring Cloud.11 guías →DevOps, CI/CD y contenedoresGit, pipelines de Jenkins, entrega continua, Docker, Kubernetes e infraestructura como código: las prácticas y herramientas para entregar software con fiabilidad.14 guías →