Tenemos una aplicación con cientos de posibles acciones de usuario y pensamos en cómo mejorar las pruebas de detección de fugas de memoria.¿Cómo probar las fugas de memoria?
Actualmente, así es como sucede: cuando se prueba manualmente el software, si parece que nuestra aplicación consume demasiada memoria, utilizamos una herramienta de memoria, buscamos la causa y la solucionamos. Es un proceso bastante lento y no eficiente: los problemas se descubren tarde y depende de la buena voluntad de un desarrollador.
¿Cómo podemos mejorar eso?
- Compruebe internamente que algunas acciones (como "cerrar archivo") recuperan algo de memoria y lo registran?
- ¿Afirmar el estado de la memoria dentro de nuestras pruebas unitarias (pero parece que esto sería una tarea tediosa)?
- ¿Lo verifica regularmente de vez en cuando?
- ¿Incluye ese cheque cada vez que se implementa una nueva historia de usuario?
¿Qué idioma estás usando? ¿Es un lenguaje basura como Java o Perl o un lenguaje que no es de GC como C o C++? –
¿Y qué plataforma? Existen herramientas de análisis estático, de generación de perfiles de memoria y otras técnicas disponibles, pero sin ninguna especificación sobre su implementación es difícil darle una respuesta utilizable. –