vs2015 unitarias realizar pruebas plan mvc mock las interfaz funcionan con como .net asp.net unit-testing

.net - realizar - pruebas unitarias mvc 5



Nuevo en pruebas unitarias (3)

Me gustaría saber cómo implementar pruebas unitarias en una aplicación existente (bastante grande) utilizando Visual Studio 2008 (.net 2.0).

Entiendo que el desarrollo de pruebas unitarias para el código existente / heredado no es realista, pero me gustaría tener pruebas para el progreso del código.

He encontrado muchos ejemplos sobre cómo escribir pruebas para el código, pero nada sobre cómo configurarlo desde cero en un proyecto existente, y cómo integrarlo en el ciclo de desarrollo.


Enfoque simple:

  • Elija uno de los marcos de prueba de unidades (Nunit, MbUnit, Xunit, marco de prueba de unidad VS, ...)
  • Agregue proyecto para pruebas unitarias en su solución (por ejemplo, UnitTests).
  • Comience a escribir pruebas.

Para una organización más fácil, cree al menos un espacio de nombres para cada proyecto en solución, por ejemplo UnitTest.Project1, UnitTests.Project2, ... Dependiendo del tamaño de los proyectos, agregue más niveles al espacio de nombres.

De esta forma, el proyecto de prueba es parte de la solución. Si usa alguna herramienta de integración continua, las pruebas se pueden ejecutar automáticamente en cada depósito de código fuente de fuente.

Editar:
En cuanto al comentario sobre el problema del Marco de Prueba de Unidad de MS con la creación de pruebas unitarias, hay un problema conocido: el asistente "Crear prueba de unidad" no funciona . Parece que hay tipos de proyectos no compatibles que impiden que el asistente de prueba de unidades funcione correctamente. Acabo de probar con una solución que tiene un F # y varios proyectos de C #. Agregué un proyecto de prueba unitaria e intenté agregar pruebas. El asistente de prueba tuvo problemas hasta que descargué el proyecto F #. Entonces todo funcionó bien.


Recomiendo leer este libro: Trabajar eficazmente con Legacy Code si desea hacer una prueba unitaria para el código existente. También es un buen libro sobre mejores prácticas para pruebas unitarias en general.

Es posible hacer pruebas unitarias en proyectos existentes, pero tendrá que hacer algunos ajustes aquí y allá para que el código sea comprobable. Demasiadas dependencias es a menudo el problema.

EDITAR (después de su comentario) Si realmente desea integrar las pruebas unitarias en su ciclo de desarrollo, entonces debe optar por TDD ( Desarrollo controlado por prueba ). El objetivo aquí es escribir las pruebas unitarias primero, para que comprendas bien qué harán tus clases. Por supuesto, estas pruebas fallarán, pero el objetivo es hacer que funcionen una por una. Haz un google en TDD, hay mucha información por ahí.


Una manera fácil de realizar pruebas con el código existente es tener una política de escribir una prueba cuando se encuentre un error.

es decir

  • Encontrar error
  • Prueba de escritura que replica error
  • Fijar