Reproducción automática
Autocompletar
Clase anterior
Completar y continuar
Testing Sostenible con TypeScript
Masterclass - Introducción a Testing Sostenible con TypeScript
01. Bienvenida (1:13)
02. Presentación Miguel A. Gómez (2:26)
03. Presentación Carlos Blé (0:52)
04. ¿Por qué degenera el código? (0:57)
05. Reescribir el proyecto desde cero no es la solución (1:35)
06. El arquitecto en su torre de marfil (0:56)
07. ¿Por qué perdemos el control sobre el código? (1:50)
08. Las reglas del código sostenible (1:43)
09. Sin test no hay calidad en el software (1:55)
10. Abstracciones adecuadas e intencionalidad (2:28)
11. Objetivos del curso (3:43)
12. Las katas de código (2:16)
13. El entorno, refactor automático y analizadores estáticos (2:54)
14. Consejos para mejorar tu aprendizaje (1:44)
Módulo 1 - Fundamentos de testing
1. Overview (3:36)
Módulo 1 - Introducción
1. Introducción (1:36)
2. La importancia del testing (2:28)
3. Quiz
Módulo 1 - Tipos de test
1. Qué entendemos por testing (1:18)
2. Test manuales vs. automáticos (1:37)
3. Test funcionales (2:03)
4. Test no funcionales (2:31)
5. Quiz
Módulo 1 - Distribución de los test
1. La pirámide del testing (3:53)
2. El trofeo del testing (3:28)
3. El iceberg del testing (4:24)
4. Quiz
Módulo 1 - Test unitarios
1. Qué son (1:58)
2. Características (3:53)
3. Quiz
Módulo 1 - Kata: construir una librería de test
1. Preparando el entorno (1:21)
2. Creando el módulo stats (2:12)
3. El test más sencillo posible (3:13)
4. Abstrayendo la primera aserción (2:36)
5. Encapsulando los test (2:25)
6. Soporte para asincronía (2:13)
7. Agrupando los test mediante it y describe (2:39)
8. Quiz
Módulo 1 - Frameworks de testing
1. Introducción (1:02)
2. Framework vs. librería (1:28)
3. xUnit vs. RSpec (2:38)
4. Quiz
Módulo 1 - Jest
1. Características (1:37)
2. Instalación y configuración (1:47)
3. Reemplazando nuestra librería por Jest (1:48)
4. Ejecución desde la línea de comandos (2:17)
5. Ignorar y aislar test (3:39)
6. Modo watch (2:17)
7. Depurar (2:30)
8. Cobertura de código (2:26)
9. Generar informes de cobertura (1:33)
10. Establecer un umbral de cobertura (2:51)
11. Quiz
Módulo 1 - Testing de funciones puras
1. ¿Funciones puras? (1:52)
2. Ejemplos de funciones puras (1:53)
3. Kata - Fizzbuzz: enunciado (2:14)
4. Kata - Fizzbuzz: implementación (4:25)
5. Quiz
Módulo 1 - Quiz final
1. Quiz
Módulo 2 - Testing Sostenible
1. Overview (3:49)
Módulo 2 - Introducción
1. Test fáciles de mantener (2:14)
2. Principios (2:41)
3. Quiz
Módulo 2 - Kata: camelCase converter
1. Enunciado (2:24)
2. Primeros pasos (2:27)
3. Generalizando (2:49)
4. Quiz
Módulo 2 - Estructura y denominación
1. Estructura (1:20)
2. Nombres que aportan poco (1:38)
3. Especificaciones funcionales (2:05)
4. Infravalorar el nombre de los test (0:56)
5. Anatomía (2:52)
6. Quiz
Módulo 2 - Preparación y agrupación
1. Gestión del estado: before y after (2:48)
2. Organización (2:09)
3. Sin datos irrelevantes (2:11)
4. Quiz
Módulo 2 - Refactorizando las pruebas
1. El caso del veterinario (4:47)
2. Preparando las fixtures con funciones factoría (5:29)
3. Aplicando el patrón builder (4:21)
4. Quiz
Módulo 2 - Aserciones
1. Aserciones explícitas (4:12)
2. Aserciones para excepciones (1:41)
3. Aserciones propias de agrupación (3:11)
4. Aserciones propias de extensión (4:39)
5. Quiz
Módulo 2 - Fundamentos de mocking
1. Introducción (2:59)
2. Tipos de dobles (2:14)
3. Stubs (3:56)
4. Spies (2:23)
5. Mocks estrictos (3:08)
6. Dummies y fake objects (3:55)
7. Mocking con Jest (1:19)
8. Jest.fn (4:35)
9. Jest.mock (0:53)
10. Jest.spyOn (1:09)
11. Combinaciones de dobles (5:27)
12. Errores típicos y buenas prácticas (4:12)
13. Ventajas e inconvenientes (1:55)
14. Quiz
Módulo 2 - Kata: video surveillance
1. Enunciado (2:32)
2. Dobles aplicando monkey patching (3:36)
3. Dobles propios sin monkey patching (1:44)
4. Dobles usando los mocks de Jest (2:51)
5. Último caso: espiando el sensor (3:21)
6. Quiz
Módulo 2 - Quiz final
1. Quiz
Módulo 3 - Fundamentos de TDD
1. Overview (4:22)
Modulo 3 - Introducción
1. Qué es TDD (1:05)
2. Programación extrema (2:33)
3. Beneficios de TDD (6:31)
4. No es un dogma (2:16)
5. Quiz
Módulo 3 - Kata: string calculator
1. Enunciado (1:37)
2. Lista de ejemplos (2:52)
3. Primeros casos (4:24)
4. Casos más complejos (5:23)
Modulo 3 - Conceptos básicos
1. Leyes del TDD y el ciclo Red-Green-Refactor (1:40)
2. Control de versiones (1:57)
3. Flujo de TDD (1:58)
4. Quiz
Módulo 3 - Kata: password validator
1. Enunciado (1:49)
2. Lista de ejemplos (1:35)
3. Primeros casos (2:37)
4. Últimos casos (4:30)
Módulo 3 - TDD como herramienta de diseño
1. Introducción (1:13)
2. De los requisitos a los ejemplos (1:12)
3. Los criterios de aceptación no son ejemplos (2:07)
4. Estrategias de selección de casos (1:22)
5. Quiz
Módulo 3 - Kata: filtro CSV
1. Enunciado (1:35)
2. Listado de pruebas (2:30)
3. Primeros casos (5:03)
4. Nuevos casos que surgen (6:10)
5. Refactorizando las pruebas (4:00)
6. Siguientes casos (5:29)
7. Último caso para un elemento (4:14)
8. Generalizando (6:04)
9. Apoyándonos en un test temporal (5:29)
10. Últimos casos (2:49)
11. Refactor final (4:00)
12. Quiz
Módulo 3 - TDD: Estrategias de implementación I
1. Green bar patterns (0:46)
2. Implementación fake (1:22)
3. Triangulación (0:59)
4. Implementación obvia (1:43)
5. De uno a muchos (1:10)
6. Quiz
Módulo 3 - Kata: Fibonacci
1. Enunciado (0:58)
2. Primeros casos (3:20)
3. Aplicando recursividad múltiple (3:57)
Módulo 3 - Estrategias de implementación II
1. Premisa de la prioridad de transformación (TPP) (1:44)
2. La secuencia de transformaciones (1:05)
3. Diseño emergente vs. algoritmia (1:49)
4. Quiz
Módulo 3 - Kata: prime factors
1. Enunciado (0:52)
2. Primeros casos (3:08)
3. Aplicando recursividad (3:15)
4. Refactor de las pruebas y del código de producción (3:38)
5. Casos límite y refactor final (3:58)
6. Quiz
Módulo 3 - Kata: word wrap
1. Enunciado (1:52)
2. Implementación recursiva (4:22)
3. Implementación iterativa (1:35)
4. Espacios en blanco (2:32)
5. Refactorizando (2:27)
6. Texto nulo y ancho negativo (1:49)
7. Organizando los test (1:39)
8. Extrayendo un value object para el ancho de columna (4:04)
9. Extrayendo un value object para el texto (4:02)
10. Atrayendo comportamiento a los value object (3:55)
11. Refactor final (2:44)
12. Quiz
Módulo 3 - Estilos de TDD
1. Introducción (0:56)
2. Outside-in TDD (3:59)
3. Inside-out TDD (2:14)
4. Combinación (1:46)
5. Quiz
Módulo 3 - Kata: banking kata
1. Enunciado (2:02)
2. Test de aceptación en rojo (3:36)
3. Doble del repositorio de transacciones (5:33)
4. Doble de StatementPrinter (4:54)
5. Aplicando TDD en el repositorio (4:30)
6. Comprobando la clase Clock (2:32)
7. Primer test de StatementPrinter (2:40)
8. El caso de una sola variable de StatementPrinter (3:14)
9. El caso de múltiples transacciones (2:33)
10. Test de aceptación en verde (1:25)
Módulo 3 - Quiz final
1. Quiz
10. Atrayendo comportamiento a los value object
Contenido de las clases bloqueado
Si ya estás inscrito,
tendrás que iniciar sesión
.
Inscríbete en el curso para desbloquearlo