TDD y testing
TDD consiste en escribir primero un test que falla y después el código justo para que pase, como montar un mueble comprobando cada pieza antes de poner la siguiente: se avanza a pasos pequeños y en todo momento se sabe qué funciona. La explicación completa, con un ejemplo, está en qué es TDD.
En este tema están el ciclo rojo-verde-refactor, los tipos de pruebas, los dobles de prueba (stubs, spies y mocks), cómo preparar herramientas como Jest o JUnit y katas para practicar. También cómo encajan los tests cuando el código lo escribe una IA: son la especificación que dice qué tiene que hacer y la red que avisa cuando se equivoca.
Empieza aquí
- Tipos de pruebas de software (testing) y pirámide de testsQué es el testing de software y sus tipos de pruebas: unitarias, de integración, end to end, funcionales, automatizadas y manuales, y la pirámide de tests.
- Qué es TDD (Test Driven Development): ciclo y ejemploQué es TDD (desarrollo dirigido por tests), explicado fácil: el ciclo rojo, verde y refactor con ejemplos en JavaScript y Java, y cómo usarlo con IA.
- Algoritmo TDD: el ciclo rojo, verde, refactor y sus reglasEl algoritmo de TDD en un diagrama: qué puedes y qué no puedes hacer en rojo, verde y refactor, las tres leyes de TDD y un ejemplo ejecutado.
- ZOMBIES en TDD: qué tests escribir primero, con ejemploZOMBIES, la técnica de TDD de James Grenning para saber qué test escribir primero: cero, uno, muchos, límites, interfaz y errores. Con ejemplo ejecutado.
- Inside-out TDD y outside-in TDD: arquitectura y diseñoInside-out (escuela clásica) frente a outside-in (escuela de Londres): en qué se diferencian, cómo influyen en la arquitectura y un ejemplo de cada uno.Nivel avanzado
Lo nuevo
- Qué es un isograma: significado, ejemplos y la kata
Un isograma es una palabra en la que cada letra aparece las mismas veces, aunque a menudo se llama así a la que no repite letras. Ejemplos y la kata con TDD.
Todos los artículos 23
- Algoritmo TDD: el ciclo rojo, verde, refactor y sus reglas
- Codewars: qué es y cómo empezar a resolver katas
- Composición de un test en TDD: partes, métodos y ejemplos
- Inside-out TDD y outside-in TDD: arquitectura y diseñoNivel avanzado
- Instalación de Jasmine Standalone (a pelo) paso a paso
- Instalar Jest en un proyecto de JavaScript (npm y ESM)
- Jest: Cannot use import statement outside a module
- Kata Codewars: el cuadrado de cada dígito de un número
- Kata Roman Numerals en JavaScript con TDD paso a paso
- Kata Stubs y Spies de Carlos Blé: dobles de prueba en JavaNivel avanzado
- Katas para pruebas y TDD: lista por niveles
- Koan y kata: qué son y qué significan (zen y programación)
- Libro TDD de Carlos Blé: Diseño Ágil con TDD
- Metodología TDD: pasos para aplicarla, con un ejemplo
- Pruebas unitarias o de unidad: qué son, ejemplo y FIRST
- Qué es ATDD: desarrollo dirigido por tests de aceptación
- Qué es BDD: guía rápida con Gherkin y newsletter BDD Addict
- Qué es TDD (Test Driven Development): ciclo y ejemplo
- Qué es un isograma: significado, ejemplos y la kata
- ¿Qué es un QA tester? Qué hace y en qué se diferencia
- Testing en Ruby: tests con Minitest, RSpec y Test::Unit
- Tipos de pruebas de software (testing) y pirámide de tests
- ZOMBIES en TDD: qué tests escribir primero, con ejemplo