Estoy escribiendo pruebas unitarias para una aplicación que usa una base de datos, y me gustaría poder ejecutar la aplicación con algunos datos de muestra/prueba, pero me ' No estoy seguro de la mejor manera de configurar los datos de prueba iniciales para las pruebas.Pruebas unitarias: Configuración de la base de datos para las pruebas
Lo que estoy buscando es un medio para ejecutar el código bajo prueba en la misma base de datos (o esquemáticamente idéntica) que utilizo actualmente durante la depuración, y antes de cada prueba, me gustaría asegurarme de que la base de datos se restablece a un borrón y cuenta nueva antes de insertar los datos de prueba.
Me doy cuenta de que el uso de un patrón IRepository me permitiría eliminar la complejidad de las pruebas en una base de datos real, pero no estoy seguro de que sea posible en mi caso.
¿Alguna sugerencia o artículo que pueda orientarme en la dirección correcta?
Gracias!
--EDIT--
Gracias a todos, esas son algunas sugerencias! Probablemente iré por la ruta de burlar mi capa de acceso a datos, combinada con algunas clases de configuración simples para generar exactamente los datos que necesito por prueba.
¿Cómo son las clases de scrub? ¿Encuentra la ID de clave principal más reciente y elimina el registro asociado? –
No, en realidad, elimina por completo todo y carga justo lo que necesito para la prueba. –