Actualmente estoy trabajando en una aplicación web de aproximadamente 15 años.Limpieza de la enorme base de datos de Perl
Contiene principalmente CGI perl scripts con HTML :: Plantilla plantillas.
Tiene más de 12 000 archivos y aproximadamente 260 MB de código total. Estimo que no se necesitan más de 1500 scripts Perl y quiero deshacerme de todo el código no utilizado.
Prácticamente no hay pruebas escritas para el código.
Mis preguntas son:
- ¿Sabe usted de cualquier módulo CPAN que puede ayudar a conseguir una lista de sólo los módulos
use
D yrequire
d? - ¿Cuál sería su enfoque si quisiera deshacerse de todo el código adicional?
Estaba pensando en los siguientes enfoques:
- intento de anular las
use
yrequire
órdenes internas Perl con los que la salida del nombre del archivo cargado en una ubicación específica - anulación del
warnings
y/ostrict
módulosimport
función y salida el nombre del archivo en la ubicación específica - estudiar el módulo perl
Devel::Cover
y tomar el mismo enfoque y analizar la c oda al hacer la prueba manual en lugar de pruebas automatizadas - reemplazar el ejecutable Perl con uno personalizado, que registrará cada nombre de archivo se lee (no sé cómo hacer eso aún)
- algún uso creativo de
lsof
(?!?)
Mi enfoque sería comenzar con la escritura de las pruebas antes de tocar cualquier código, como siempre cuando se realiza un mantenimiento importante. –
Mis estimaciones son que el 80% del código no se usa/necesita - no es financieramente factible escribir pruebas para todo el código. –
@TudorConstantin: no escriba pruebas unitarias para el CÓDIGO. Escribir pruebas funcionales para casos de uso de la aplicación. – DVK