/ / ¿Para qué capa necesitas escribir test unitario? - .net, asp.net-mvc-3, wcf, unit-testing, mstest

para qué capa necesita escribir prueba unitaria? - .net, asp.net-mvc-3, wcf, pruebas unitarias, mstest

Soy nuevo en la prueba de unidad / TDD. Estamos desarrollando una aplicación web con la siguiente arquitectura:

  1. MVC
  2. Capa de servicio WCF
  3. Capa de Logica de Negocios
  4. DAL con EF

No he hecho pruebas de unidad antes, pero lo vi en algunos proyectos, así que no tengo una idea clara al respecto.

¿Deberíamos escribir una prueba de unidad para cada método de cada capa o estos son específicos de alguna capa?

En segundo lugar, ¿deberíamos poner un proyecto y poner todas las capas de prueba de unidad en él? ¿Quiero saber cómo administrar las pruebas unitarias para todas las capas en el proyecto de prueba?

Respuestas

1 para la respuesta № 1

Trabajo para una tienda ágil y hacemos lo siguiente:

1. Comenzamos escribiendo UATs (Pruebas de Aceptación del Usuario). Para ti esto se haría a través de Cucumber + WatiN o algo similar. Están escritos con características de negocios en mente.
2. A continuación, escribimos pruebas unitarias para la (s) clase (s) que pretendemos agregar. Esto significa probar cada método público único y todas sus ramas lógicas. Esto se aplica prácticamente a todo menos a las vistas.
3. Para el código de Hairy, agregamos pruebas de nivel de integración que vinculan varias clases para asegurarnos de que se integren correctamente.

Algunas capas no se prueban porque se supone que "simplemente funcionan" (es decir, DBMS)

Por lo general, su CI debe ejecutar primero las pruebas unitarias, luego las pruebas de integración (si pasan las pruebas unitarias) y, finalmente, las UAT, que son las más lentas y solo si pasan las pruebas de integración.