OK, entonces mucha revisión de código es bastante rutinaria. Pero ocasionalmente hay cambios que afectan ampliamente el código complejo y frágil existente. En esta situación, la cantidad de tiempo que llevaría verificar la seguridad de los cambios, la ausencia de regresión, etc. es excesiva. Quizás incluso excediendo el tiempo que llevó hacer el desarrollo en sí.
¿Qué hacer en esta situación? ¿Combinar y esperar que nada se escape? (¡No lo defiendo!) ¿Puede hacer lo mejor que pueda e intente solo detectar cualquier falla obvia (tal vez esta sea la mayor revisión de código a la que debe apuntar de todos modos?)
Esto no es específicamente una cuestión de si las pruebas deben realizarse como parte de una revisión de código. Esta es una pregunta que pregunta cuáles son las mejores opciones en la situación descrita, especialmente con una fecha límite apremiante, no hay un conjunto completo de pruebas unitarias disponibles o pruebas unitarias no viables para el código fragmentado que ha cambiado.
EDITAR: Tengo la impresión de que algunas de las respuestas / comentarios hasta ahora han captado mi frase "impacto general", y posiblemente consideró que el cambio implicó una gran cantidad de líneas de código. Puedo entender que esta sea la interpretación, pero esa no era realmente mi intención. Por "impacto general", quiero decir, por ejemplo, el potencial de regresión es alto debido a la interconexión de la base de código, o el alcance de los efectos secundarios, no necesariamente que el cambio en sí sea grande. Por ejemplo, un desarrollador puede encontrar una manera de corregir un error con una sola línea llamando a una rutina de alto nivel existente que conecta en cascada las llamadas a muchas rutinas de nivel inferior. Probar y verificar que la corrección de errores funcionó es fácil. Validar manualmente (mediante revisión de código) el impacto de todos los efectos secundarios es mucho más difícil.
what if there is no pre-existing test suite?
- ¿Qué tal escribir uno?
Merge and hope nothing slips through?
Esa es una idea notoriamente mala.