Один из способов справиться с объектом с большим количеством состояний и зависимых объектов, который вас не волнует, - использовать «хороший макет» в EasyMock (я думаю, по умолчанию в Mockito) Это всегда будет возвращать «пустые» значения для любого метода вашего фиктивного объекта (ноль, 0 или пустая строка).
Если зависимые объекты должны что-то делать, вам нужно будет вернуть фактические или фиктивные объекты из вашего объекта.
Например, в EasyMock это будет выглядеть примерно так:
Mock mock = createNiceMock(MyClass.class);
// override default 'empty' returns for values you care about
// this could return a mock instead
ChildObj c = new ChildObj("state");
expect(mock.getChildObj()).andReturn(c);
// replay, call methods on object under test, verify here
Но вы, вероятно, хотите начать с более широкой картины: почему вы используете насмешки? Некоторые люди предпочитают тестировать только с реальными объектами и заглушками, в то время как другие предпочитают издеваться. Погуглите «mocks v. Stubs» и прочитайте топ-3 или 4 результатов, которые помогут вам решить, подходят ли вам макеты.