Soy nuevo en la prueba de unidad, así que discúlpeme por mi falta de experiencia. He leído muchos materiales que dicen que ninguna prueba debería depender de otros, es decir, que las pruebas unitarias sean completamente independientes entre sí. ¿Realmente puedes hacer eso en realidad? Tengo el siguiente ejemplo: tengo unas pocas clases de entidad que dependen unas de otras, basadas en un determinado esquema de base de datos (estoy usando Linq-to SQL para generarlas) Ahora, si quiero probar cada clase de modelo, tengo que construir un objeto de la clase de modelo, construya un objeto de prueba de cada una de sus dependencias, asígnelas a las propiedades del objeto y luego persista el objeto antes de verificar el contexto y de afirmar que realmente funciona.Podrían las pruebas de unidad de modelo ser verdaderamente independientes y cómo [ASP.NET MVC]
Esto, obviamente, hace que sea mucho más difícil hacer pruebas que no dependen unas de otras o no se ejecutan en una secuencia específica (no hago una instancia de tipo Content antes de tener al menos una instancia de tipo ContentType) La dependencia, al menos a nivel de modelo, está presente y no se puede evitar.
Por favor, critíquenme mucho, si piensan que estoy equivocado. Quiero aprender.
P.S. Solo mencionar que estoy trabajando en una aplicación ASP.NET MVC y probando con NUnit si tiene sentido
Quiere decir, debería probar mejor los controladores, o en caso de que use un patrón de repositorio, probar el repositorio, ¿verdad? – xantrus
Debe probar (más o menos) todo o su código (cada unidad en forma aislada), pero el patrón Repositorio es un buen ejemplo de acoplamiento flojo. Esto significa que puede probar sus Controladores de manera independiente de los Repositorios de concreto, y en otras pruebas unitarias puede probar los Repositorios concretos (sin tratar con los Controladores). –