Me parece que las pruebas unitarias son más que una cosa útil que hacer, también es una responsabilidad del desarrollador. Si libera código que no se ha escrito para pasar un conjunto completo e válido de pruebas unitarias, podría demorar su proyecto o causar problemas en los paquetes, clases, etc. de otra persona.
Además, debe manténgase en contacto directo con su cliente (incluso si es su propia empresa), y trate de alentarlos para que realicen pruebas integrales de aceptación. Es lo mejor para ellos (aunque he descubierto que algunas empresas se resisten a la idea, debido al corto plazo de tiempo requerido para realizar la prueba, a pesar del tiempo que ahorrará si el producto no funciona exactamente que quieren ellos).
Editar
Así que, sí, supongo que el punto que estoy tratando de decir es: sí, lo veo Test Driven Development como el camino a seguir. Otra cosa que no mencioné, por supuesto, es el hecho de que las pruebas ayudan a documentar el código. Sabrá qué se supone que deben hacer los métodos, y se asegurará de que aún lo hagan cuando realice cambios en cualquier etapa posterior.
TDD es la única forma de volar, me refiero a código. He estado haciendo TDD durante los últimos seis meses en desarrollo profesional. Antes de eso solo era una prueba unitaria. Se necesita tiempo para aprender, pero nunca me iría sin él ahora. –
Estoy totalmente de acuerdo. Empecé como un desarrollador tradicional de estilo cascada, pero sin pruebas unitarias. Ahora me estoy moviendo más hacia un desarrollo ágil y basado en pruebas. Que diferencia hace. Cada prueba hace que te sientas mucho más cerca de la finalización: D – AshtonKJ