Al cargar todas las pruebas unitarias en un paquete, la tarea make arroja un java.lang.OutOfMemoryError: error de espacio en el montón de Java.JUnit java.lang.OutOfMemoryError al ejecutar todas las pruebas en un paquete
Si ejecuto todas las pruebas en cada subpaquete, todas las pruebas se cargan y completan bien. Solo cuando intento ejecutar todas las pruebas en el paquete principal, aparece el error OOM.
No creo que este problema deba resolverse ajustando los parámetros de VM. Traté de aumentar el tamaño máximo de montón y permanente, y no resolvió el problema.
Esto me lleva a creer que hay algún problema con la recolección de basura entre las pruebas de carga en diferentes paquetes, o que hay una carga de clase demasiado ansiosa.
¿Existe una configuración de JUnit que podría resolver estos problemas, o el problema tendrá que resolverse cambiando o agregando código en los casos de prueba?
¿Estás seguro de que no tienes un consumo significativo de memoria en la estática de tus clases de prueba o en estadísticas alcanzadas por tus clases de prueba? – bmargulies
¿cómo modificó realmente los parámetros de VM? Intente confirmar que han sido configurados correctamente por los métodos en java.lang.Runtime – Bozho
No estoy seguro sobre el consumo de memoria de la estática, pero definitivamente lo investigaré. En cuanto a los parámetros de VM, probé estos: -Xmx512m -XX: PermSize = 128m -XX: MaxPermSize = 512m pero aumentarlos no ayudó a resolver el error OOM. –