Al examinar el último caso de prueba de JUnit que escribí, llamé al método LogConjugador de log4j() dentro del constructor de la clase. Eso funcionó bien para ejecutar solo esa clase del comando "ejecutar como JUnit test case" de Eclipse. Pero me doy cuenta de que es incorrecto: estoy bastante seguro de que nuestro conjunto de pruebas principal ejecuta todas estas clases a partir de un proceso y, por lo tanto, la configuración de log4j debería estar ocurriendo más arriba en algún lugar.¿Dónde configuro log4j en una clase de prueba JUnit?
Pero todavía necesito ejecutar un caso de prueba algunas veces, en cuyo caso deseo que log4j se configure. ¿Dónde debo colocar la llamada de configuración para que se ejecute cuando el caso de prueba se ejecute de manera independiente, pero no cuando el caso de prueba se ejecuta como parte de un conjunto más grande?
¿Cómo se sabe es un "archivo de configuración log4j"? ¿Cuál es el nombre del archivo? (log4j.xml?) – Chad
@Chad: He editado mi respuesta para responder a su pregunta. Consulte el enlace al bloque estático para ver exactamente cómo se implementa esto. –
Estoy usando log4j2 y tuve que usar la siguiente configuración para indicar un archivo: '-Dlog4j.configurationFile = log4j2.xml'. Además, si intenta depurar carga/inicio, esta configuración puede ser útil: '-Dlog4j2.debug = true'. – Kent