Creo que debería escribir tantas pruebas para la aplicación como sea posible. Lo ayudarán a aprender la base de código y lo prepararán para la refactorización o el nuevo desarrollo.
Hay algunos tipos de pruebas que puede escribir en ese escenario, cada una de ellas tiene sus propios méritos. Escribir estas pruebas te enseñará mucho sobre la aplicación con la que estás tratando.
En primer lugar, antes de comenzar a escribir pruebas de corrección, escriba pruebas que capturen el comportamiento actual , ya sea correcto o incorrecto. Es una apuesta bastante segura que descubrirá errores en los casos de esquina o en partes del código que no se probaron exhaustivamente al ejecutar el programa. No se preocupe por lo que debe hacer el código, simplemente capture lo que hace. A medida que avanza, no se preocupe por leer el código o pasar mucho tiempo averiguando cuál debería ser el resultado. Simplemente ejecute su prueba y capture esa salida en una afirmación.
Eso le dará una base sólida de comprensión de cómo funciona el código y dónde pueden estar los principales puntos débiles o áreas débiles. Si descubre errores, puede acercarse a las personas con el poder de decidir si vale la pena corregirlos o no y tomar esas decisiones.
A continuación, puede escribir algunas pruebas más grandes (en alcance) que cubran partes del código que pueden no ser fácilmente comprobables por unidad, pero donde aún sería importante probar los flujos de trabajo tanto como sea posible. Estas pruebas de flujo de trabajo o pruebas de integración , dependiendo de cómo desee verlas, le proporcionarán una buena base para refactorizar esos flujos de trabajo para hacerlos más verificables y protegerlo cuando se necesite agregar una nueva característica que pueda afectar un flujo de trabajo existente.
Con el tiempo, creará un conjunto de pruebas que estará allí para ayudarlo a usted o a la siguiente persona que termine heredando la aplicación.