Todas las lecturas
Working Effectively with Legacy Code

Working Effectively with Legacy Code

Este libro ofrece estrategias de principio a fin para trabajar más efectivamente con grandes bases de código legacy sin tests.

¿Qué es código legacy?

El código legacy es simplemente código sin tests.

Beneficios de los tests

El comportamiento es fundamental para entender los beneficios del testing:

El comportamiento es lo más importante del software. Es de lo que dependen los usuarios. A los usuarios les gusta cuando añadimos comportamiento (siempre que sea lo que realmente querían), pero si cambiamos o eliminamos comportamiento del que dependen (introducimos bugs), dejan de confiar en nosotros.

Cómo implementar tests en bases de código legacy

Cuando cambiamos código, deberíamos tener tests en su lugar. Para poner los tests en su lugar, a menudo tenemos que cambiar código.

El enfoque sugerido:

  1. Identificar puntos de cambio.
  2. Encontrar puntos de test.
  3. Romper dependencias.
  4. Escribir tests.
  5. Hacer cambios y refactorizar.

Otro término útil es “costura” (seam). Una costura, en este contexto, es “un lugar donde puedes alterar el comportamiento en tu programa sin editar en ese lugar”. La analogía es una costura en la ropa, el lugar donde dos partes están unidas. En software, estos lugares son generalmente lugares donde hay interfaces bien definidas. Esto puede aprovecharse para cambiar la implementación usando técnicas como inyección de dependencias o mocking de interfaces en el caso de escribir tests.


Ssearch Dtheme Llang Jolder Knewer Ttoc Ccopy ?help

Atajos de Teclado

Navegación

HInicio
BBlog
RLecturas
LCambiar idioma

Acciones

SBuscar
DCambiar tema
CCopiar URL
GGIr arriba

Artículos

JArtículo anterior
KArtículo siguiente
TMostrar/ocultar índice

General

?Mostrar ayuda
EscCerrar