BasicConfigurator не регистрирует трассировки стека по умолчанию в тестах JUnit - PullRequest
2 голосов
/ 04 июня 2011

При выполнении некоторых тестов JUnit я начинаю со следующего, чтобы настроить Log4J :

BasicConfigurator.configure()

Я звонюследующее через Commons Logging :

LogFactory.getLogger(this.getClass()).fatal(exception)

Хотя это не печатает трассировки стека (только сообщение об исключении).

Мне нужно знать, какие шаги необходимы для печати трассировок стека с помощью упрощенной настройки ведения журнала, используемой в тестах JUnit?Я предпочел бы не настраивать Log4J полностью только для тестов JUnit, но если мне нужно, дайте мне знать.

1 Ответ

5 голосов
/ 04 июня 2011

Это никак не связано с настройками регистратора.

Прочитайте Javadoc для метода fatal(Object). Там написано:

"ВНИМАНИЕ! Обратите внимание, что при передаче Throwable этому методу будет напечатано имя Throwable, но не будет трассировки стека. Для печати трассировки стека используйте вместо этого фатальную форму (Object, Throwable)."

Если вы хотите, чтобы в журналах содержалась трассировка стека, вы должны использовать версию метода с двумя аргументами. Это относится и к соответствующим методам для других уровней журнала.

...