¿Cómo puedes realizar las mismas pruebas que Effort usando solo Moq?


Pregunta

En la actualidad, he configurado muchas pruebas, incluidas las pruebas de capa de acceso a datos y capa lógica de negocios utilizando Effort (consulte https://effort.codeplex.com/ ). Ya hemos estado usando Moq en nuestras pruebas unitarias, y mi jefe desea mantener las cosas simples, así que quiere que vea si puedo pasar las pruebas de la implementación de Effort a nosotros solo Moq y FakeDbSet (consulte http: // aikmeng.com/post/62817541825/how-to-mock-dbcontext-and-dbset-with-moq-for-unit ), para hacer que la base del código sea más fácil de mantener.

Por lo que entiendo, Effort básicamente imita una base de datos SQL Server completa en la memoria. Por lo tanto, parece que se necesitaría mucho código usando Moq para configurar todo, de modo que se pueda ejecutar una prueba usando solo eso. ¿Alguien tiene alguna idea sobre esto? ¿Se puede hacer incluso sin una gran cantidad de codificación? ¿Alguien tiene alguna sugerencia? TIA.

Respuesta aceptada

Acabé quedándome con Esfuerzo. El uso de FakeDbSet y Moq requirió mucha más configuración y provocó que algunas consultas de LINQ fallaran en las pruebas de la unidad aunque funcionen en una situación de producción.

ACTUALIZAR:

Resulta que no fue un problema con FakeDbSet o Moq; hubo problemas en mi consulta LINQ en los que fallaría si hubiera valores de cadena nulos.





Licencia bajo: CC-BY-SA
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué