Как сделать JUnit assert для сообщения в логгере

У меня есть тестовый код, который вызывает регистратор Java, чтобы сообщить о своем состоянии. В тестовом коде JUnit я хотел бы убедиться, что в этом логгере была сделана правильная запись в журнале. Что-то вроде следующего:

methodUnderTest(bool x){
    if(x)
        logger.info("x happened")
}

@Test tester(){
    // perhaps setup a logger first.
    methodUnderTest(true);
    assertXXXXXX(loggedLevel(),Level.INFO);
}

Я полагаю, что это можно сделать с помощью специально адаптированного средства ведения журнала (или обработчика, или средства форматирования), но я бы предпочел повторно использовать решение, которое уже существует. (И, если честно, мне не ясно, как получить logRecord от регистратора, но предположим, что это 'возможно.) Я

Ответы на вопрос(21)

Ваш ответ на вопрос