Как настроить log4j в среде модульного тестирования? - PullRequest
21 голосов
/ 12 января 2011

Как лучше всего настроить log4j для использования в среде модульного тестирования? Я предпочитаю, чтобы мои модульные тесты не имели внешних зависимостей, поэтому чтение файла конфигурации log4j не вариант. В идеале было бы 1 или 2 вызова функции, которые я мог бы сделать из функции настройки модульного теста.

Ответы [ 2 ]

17 голосов
/ 12 января 2011

вы можете поместить статический кодовый блок в начало теста, который выполняет

BasicConfigurator.configure();

Обратите внимание, что проблема заключается в том, что каждый раз, когда эта строка выполняется, log4j добавляет аппендер, и выполучить дубликаты записей журнала.Поэтому, если вы сделаете это в каждом тестовом классе, вы получите n дубликатов каждого оператора журнала.

Поэтому я рекомендую создать класс, который является вашим BaseTestCase, и сделать это там.

Обратите внимание, что наличие неких тестовых ресурсов с соответствующей конфигурацией - неплохая идея ...

3 голосов
/ 13 января 2011

Log4j уже является внешней зависимостью.Но в любом случае, вы получили свой ответ ниже (hvgotcodes), поэтому я просто добавлю, что вы можете настроить log4j программно.В основном все, что вы можете сделать через config, вы также можете сделать с помощью кода:

http://robertmaldon.blogspot.com/2007/09/programmatically-configuring-log4j-and.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...