Aunque es tentador por su velocidad y simplicidad, el autor argumenta que el uso de mocks de bases de datos para las pruebas, en última instancia, causa más problemas de los que resuelve. Un ejemplo de creación de usuario destaca las diferencias entre mocks y pruebas contra una base de datos real. Las pruebas de bases de datos reales revelan problemas potenciales desde el principio, como violaciones de restricciones únicas, manejo de valores predeterminados y cuellos de botella de rendimiento, lo que ahorra tiempo de depuración y reduce los riesgos de producción. A medida que las aplicaciones evolucionan y los esquemas cambian, las pruebas de bases de datos reales manejan mejor las nuevas validaciones, las modificaciones de tipo de datos y los cambios en la precisión de la marca de tiempo, asegurando que el código esté alineado con la base de datos real. El autor sugiere priorizar las pruebas de bases de datos reales para las capas de acceso a datos, mientras que las usa en la capa de servicio para exponer las interacciones de la lógica de negocios con los datos. Las capas de controladores, sin embargo, pueden simular llamadas de servicio de manera efectiva. El equilibrio entre las pruebas de bases de datos reales y los mocks es clave para construir aplicaciones robustas.