- Encontrar bugs
 - Documentación viva del diseño
 - Permite aplazar decisiones de diseño
 - Soportar el aumento del nivel de abstracción a medida que nuevos requerimientos aparecen
 - Exponen los defectos de diseño
- Un setup que cuesta escribir
 - Muchas dependencias
 - Dificultar de testear en definitiva