Estoy interesado en escuchar experiencias usando TDD y pruebas unitarias para C++ en general con Visual Studio 2005 (Professional)¿Cómo se integra un enfoque TDD con VisualStudio?
Primero algunos antecedentes. Tenemos un proyecto bastante grande y gran parte del mismo se ha desarrollado en Linux utilizando CppUnit para las pruebas unitarias. El proyecto está dividido en varias bibliotecas, cada una con su propio conjunto de pruebas. Tengo un script simple que compila la biblioteca, compila el conjunto de pruebas y luego ejecuta las pruebas. Entonces, después de hacer cambios en el código, simplemente ejecuto "prueba" desde una línea de comando y se ejecutan las pruebas.
Ahora, la mayoría de los desarrolladores están utilizando Visual Studio 2005 en Windows para el desarrollo de este producto. Por supuesto, todavía pueden ejecutar las pruebas desde una línea de comandos usando nmake pero implica pasos adicionales y yo preferiría tener una solución mucho más integrada.
Entonces mi pregunta tiene dos partes.
En primer lugar, ¿cuál es la mejor manera de diseñar el código para las pruebas en una base de código grande? ¿Es normal crear varios proyectos de prueba en una solución, uno para cada biblioteca?
En segundo lugar, ¿hay alguna herramienta para integrar las pruebas de CppUnit en Visual Studio? Con las dependencias configuradas correctamente, el proyecto de prueba debería ejecutar las pruebas, pero actualmente los resultados aún aparecen en una ventana de comandos.
También utilizamos CruiseControl por lo que todas las pruebas se ejecutan después de cada compromiso con el sistema de control de origen. Sin embargo, estaba buscando algo para que lo usen los desarrolladores como parte del ciclo de pruebas de edición a medida que se desarrollan. –