Cualquier prueba unitaria es mejor que ninguna. Entonces no es un trato de todo o nada.
En su caso, dado que Test Driven Development no ha sido la norma, se preguntará cómo son útiles las pruebas.
Desea asegurarse de que cualquier código futuro que escriba no rompa ninguna funcionalidad (actual) , y ahí es donde sus casos secundarios son útiles. Si pasan las pruebas bien escritas, lo más probable es que no haya dañado nada. El próximo desarrollador que venga le agradecerá las pruebas y la documentación.
Con lo que puede comenzar es si tiene una arquitectura en capas bien dividida, recoge los niveles de acceso a datos y trabaja hacia arriba (hacia el nivel de interfaz de usuario) con las pruebas. Si el proyecto tiene un modelo de dominio, es el candidato más probable para TDD, ya que es probable que tenga la mayor parte de la lógica. Si el nivel de servicio (o lógica de negocios) solo está haciendo una llamada al nivel de Acceso a dominio / datos, no tiene sentido hacer el nivel de Servicio en la forma TDD. Esas son pruebas esponjosas y no tienen mucho valor.
Agregado a una herramienta de cobertura de código como Emma, y puede monitorear constantemente la mejora en la cobertura general de la prueba.
Puede comenzar a cubrir su código actual y, si tiene algo de tiempo para gastar, comenzar a cubrir la funcionalidad principal del código antiguo. También puedes pedirle a tu PM algún tiempo extra para eso =)
fuente
¡Absolutamente no! Comience a probar el nuevo código que está agregando. Verá enormes beneficios al hacerlo, incluso si algunos de los componentes más antiguos no tienen pruebas. Como tiene que lidiar con uno de esos componentes, o encontrar un error en él, escriba una prueba. Con el tiempo obtendrá más del código anterior bajo prueba.
fuente