Tengo un proyecto de sitio web ASP.net (.net 3.5). Actualmente, todos los archivos de código que no son de código subyacente (incluidos los elementos de Linq2Sql, contextos de datos, lógica comercial, métodos de extensión, etc.) se encuentran en la carpeta App_Code.Pruebas unitarias Sitio web ASP.net Código de proyecto almacenado en App_Code
Estoy interesado en introducir Unit Testing (usando nunit) en al menos algunas secciones del proyecto en progreso. Cualquier prueba de unidad que yo haría necesitaría tener acceso completo a todo el código que se encuentra actualmente en la carpeta App_Code. He hecho un poco de lectura inicial hasta el momento, y el consenso parece ser:
- Esto no será posible dada mi configuración actual
- Prueba de la unidad requiere hacer referencia a las clases que son parte de un archivo DLL compilado, y una Web Site Project, por definición, solo compila en tiempo de ejecución.
- Para proceder, tendré que convertir mi proyecto completo a una aplicación web, o mover todo el código que me gustaría probar (es decir, todo el contenido de App_Code) a un proyecto de biblioteca de clase y referencia el proyecto de la biblioteca de la clase en el proyecto del sitio web. Cualquiera de estos proporcionará acceso a las clases que necesito en formato dll compilado, lo que me permitirá probarlos en una unidad.
¿Es esto correcto? ¿O hay otra forma en que puedo probar la unidad sin reestructurar/refactorizar todo el proyecto?
A pesar de este conocimiento es útil, no creo que esto es una buena respuesta ya que se afirma en la pregunta que el PO sabe cómo hacer esto. Además, creo que esta pregunta está dirigida a personas que ya saben esto. –