Boost Academy
FormaciónEvaluacionesPerfil
Volver
  • En directo

TDD — Iniciación

8h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • TDD

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Este curso está dirigido a personas desarrolladoras que se incorporan por primera vez a la práctica del Test-Driven Development y que cuentan con conocimientos básicos de programación pero sin experiencia previa en escritura de tests automatizados. A lo largo de las ocho horas de formación, la persona participante comprenderá el fundamento y la lógica del ciclo Red-Green-Refactor, aprenderá a escribir tests unitarios mínimos antes de que exista código de producción, ejecutará katas guiadas para interiorizar la cadencia del método y distinguirá con precisión los límites de la fase de refactorización frente a la introducción de nueva funcionalidad, todo ello con el objetivo de que al finalizar sea capaz de completar de forma autónoma un ciclo TDD completo sobre un problema sencillo y bien definido.

  1. Explicar el propósito de cada fase del ciclo Red-Green-Refactor y diferenciar la refactorización de la adición de nueva funcionalidad mediante ejemplos concretos.
  2. Identificar en fragmentos de código y en enunciados en lenguaje natural qué fase del ciclo está siendo violada y qué aserción corresponde a cada requisito funcional.
  3. Escribir un test unitario mínimo que falle antes de que exista el código de producción y aplicar a continuación la implementación mínima necesaria para que ese test pase.
  4. Ejecutar el ciclo Red-Green-Refactor completo en una kata guiada, interpretar los resultados de la suite de tests distinguiendo un test fallido de un error de ejecución e integrar todas las habilidades anteriores en un flujo de trabajo cohesionado.

El ciclo Red-Green-Refactor: fundamentos conceptuales Se introducen las tres fases del ciclo TDD —Red, Green y Refactor— explicando el propósito de cada una y la razón por la que el orden es irrompible. Se analiza la diferencia esencial entre refactorizar código existente y añadir nueva funcionalidad, apoyándose en ejemplos concretos que ilustran errores habituales de confusión entre ambas actividades.

Lectura y diagnóstico de código TDD A partir de fragmentos de código reales y contraejemplos deliberadamente incorrectos, la persona participante practica la identificación de qué fase del ciclo está siendo vulnerada y por qué. Paralelamente se trabaja la traducción de requisitos funcionales expresados en lenguaje natural a aserciones concretas, estableciendo el puente entre la especificación y el test.

Escritura del primer test y código de producción mínimo Se guía la escritura de un test unitario mínimo que falle en ausencia de implementación, prestando atención a la elección del nombre, la aserción y el alcance del test. A continuación se aplica la regla del código de producción mínimo suficiente para hacer pasar ese único test, evitando la sobre-ingeniería prematura.

Ejecución de katas y lectura de resultados Las últimas horas se dedican a la práctica continuada mediante katas sencillas ejecutadas paso a paso. Se trabaja la interpretación de la salida de la suite de tests, diferenciando un test fallido de un error de ejecución o un problema de configuración. La kata final integra todos los aprendizajes anteriores en un ciclo TDD completo realizado de forma autónoma con soporte del instructor.

  • Ordenador con acceso a Internet y permisos para instalar software.
  • Entorno de desarrollo instalado y funcional para el lenguaje utilizado en el curso (se especificará en la convocatoria).
  • Framework de testing correspondiente al lenguaje configurado y verificado antes del inicio de la sesión (p. ej. Jest, pytest, JUnit o similar).
  • Editor de código con soporte para el lenguaje del curso (se recomienda Visual Studio Code con las extensiones pertinentes).
  • Escritura de funciones y manejo de estructuras de datos básicas en al menos un lenguaje de programación.
  • Comprensión de qué es una función, un valor de retorno y una condición booleana.
  • Capacidad para ejecutar código desde la línea de comandos o desde un entorno de desarrollo integrado.