В моем понимании, весь смысл объявления имитации заключается в том, чтобы сказать: «Мои критерии проверки выполнения теста состоят в том, что фактические вызовы методов на фиктивных объектах проверяются» (в противном случае нет причин использовать mock).
Но если это так, то нет смысла в общих макетах, после того, как один тест сделан (проверки пройдены), макет становится неактуальным.
Теперь реальный вопрос заключается в том, почему вы говорите:«но нужно работать с одним экземпляром WorkbookPool».
Возможно, стоит подумать о рефакторинге кода, чтобы создание WorkbookPool (что, кстати, выглядит великолепно, потому что у него только одна зависимость) действительно будетлегкая задача, поэтому создание новых макетов для каждого отдельного теста станет не проблемой.
Этот способ должен отвечать необходимости модульного тестирования методов, предоставляемых объектом WorkbookPool
.один тест должен охватывать конец потока 2, затем, возможно, несколько, когда / тогда будет лучшим выбором, хотя я лично не используюэтот вид тестов