Logback - отключить вход в модульный тест
Пока модульный тест выполняется в среде IDE, Logback показывает множество конфигураций или состояний, например:
21:16:59,569 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy] 21:16:59,569 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] 21:16:59,569 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at ... //... omitted for readability. 21:17:00,051 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ch.qos.logback] 21:17:00,051 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to OFF 21:17:00,051 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT] 21:17:00,051 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration. 21:17:00,053 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@20e2cbe0 - Registering current configuration as safe fallback point java.lang.AssertionError: Expected: is (3) but: was (2) at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8)
Это действительно раздражает, особенно для неудавшегося теста, потому что мне нужно вручную прокрутить вниз, чтобы увидеть сообщение об ошибке!
1. Решение - Пустая конфигурация
Чтобы исправить это, создайте пустой файл конфигурации какlogback-test.xml
и сохраните его в папке$project/src/test/resources
$project/src/test/resources/logback-test.xml
Запустите модульный тест еще раз, больше никакой ерунды,silence is golden.
2. Решение - NopStatusListener
Или добавьтеNopStatusListener
следующим образом:
logback-test.xml
%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n
Проверить это -How to stop logback status INFO at the start of every log?