Можно ли отключить выполнение регистратора во время тестирования?
У меня есть этот класс
public class UnitTestMe {
private final MockMe mockMe;
private final SomethingElse something;
private final Logger logger = LoggerFactory.getLogger(this.getClass().getClass());
public UnitTestMe(MockMe mockMe, SomethingElse something) {
this..
}
public toTest() {
logger.info("Executing toTest. MockMe a: {}, Foo: b: {}", mockMe.toString(), something.foo().bar());
mockMe.execute();
}
}
Мой модульный тест завершается с ошибкой NullPointerException, так как нечто.foo () не является поддельным объектом (я использую mockito с nicemock).
Как я могу протестировать этот класс, не удаляя оператор logger и не высмеивая несущественные части зависимостей, такие как something
?
Редактировать: что-то в этом случае является объектом-клиентом, который не используется в функции toTest()
, но необходим в других частях этого класса. Я использую класс Customer в инструкции logger, чтобы связать действие с пользователем.
Редактировать 2: Поможет ли это издеваться над объектом логгера? Я бы предположил, что я снова получу NullPointerException
, потому что методы объекта "что-то" также выполняются.