Mockito -как проверить, что макет никогда не вызывался

Я ищу способ проверить с помощью Mockito, что во время теста не было никакого взаимодействия с данным макетом. Этого легко добиться для заданного метода с режимом проверки never(), но я пока не нашел решения для полного макета.

Чего я на самом деле хочу добиться, :проверить в тестах, что ничего не выводится на консоль. Общая идея с jUnit выглядит так:

private PrintStream systemOut;

@Before
public void setUp() {
    // spy on System.out
    systemOut = spy(System.out);
}

@After
public void tearDown() {
    verify(systemOut, never());  // <-- that doesn't work, just shows the intention
}

PrintStreamимеет множество методов, и я действительно не хочу проверять каждый из них отдельной проверкой -и то же самое для System.err...

Поэтому я надеюсь, что, если есть простое решение, я смогу, учитывая, что у меня есть хорошее тестовое покрытие, заставить инженеров-программистов (и себя )удалить их (мой )код отладки, например System.out.println("Breakpoint#1");или e.printStacktrace();перед фиксацией изменений.

49
задан Roman C 16 March 2016 в 04:04
поделиться