Quiero entender la mejor manera de diseñar aplicaciones comprobables en C++, quizás en comparación con C# (porque su mi fondo y grande para las pruebas)Diseño de la capacidad de prueba en C++
Estoy acostumbrado a la codificación de las interfaces, inyección de dependencia, inversión de marcos de control y objetos simulados. Como C# tiene muchas características de lenguaje diferentes, no estoy seguro de cuánto de los patrones se deben aplicar. También me imagino que las características/limitaciones únicas de C++ podrían prestar a diferentes estrategias de prueba.
He examinado los marcos de prueba de unidades, y me gusta Google Test, pero también es importante escribir mi nuevo código para poder probarlo.
- ¿Hay proyectos de código abierto que podría ser recomendado como prueba de C++ bien hecho?
- ¿Algún libro o artículo que aborde este tema con mayor detalle?
- Recomendaciones para marcos/librerías adicionales
, gracias
La inyección de dependencias de las interfaces es la herramienta principal que hace posible las pruebas unitarias. –
@DanBryant Bueno, C++ no tiene interfaces, pero las personas hacen pruebas unitarias en él. –
Buenos contrapuntos. No pretendo que haya una sola forma de diseñar y probar correctamente. +1 para proporcionar ideas frescas. Design by Contract es en realidad una práctica que he utilizado con éxito si C#, y me olvidé en mi nuevo entorno. Parcialmente porque .NET Code Contracts lo hace tan fácil en C#. – Evan