Algo que noté recientemente es cuando estoy haciendo los siguientes tipos de proyectos:
- Al comenzar un proyecto
- Trabajando en un MVP / prototipo
- Agregar características que no están completamente definidas
- Trabajando en un proyecto de menor escala
Como referencia, ahora estoy trabajando en un proyecto de Python que actualmente tiene ~ 1k líneas de código, incluidos algunos comentarios y todos los espacios en blanco.
Me resulta inmensamente más fácil escribir primero las pruebas de integración, trabajar en el código y luego, una vez que la API se endurece, realmente funciona para agregar pruebas unitarias. Los tipos de pruebas que puedo ejecutar en mi main
función, por así decirlo, son más "de principio a fin" que cualquier otra cosa.
Esto se debe a que las pruebas unitarias son realmente molestas cuando una API está cambiando con bastante rapidez, que a menudo es el caso cuando se trabaja en un proyecto que coincide con alguno o la mayoría de los criterios anteriores.
¿Es este enfoque un buen enfoque y qué criterios deben considerarse al tomar la decisión de comenzar primero con pruebas unitarias o de integración para este tipo de proyectos? ¿Me falta el valor de las pruebas unitarias de este tipo de proyectos antes de que las API se solidifiquen más?