Мне нужна помощь в создании теста для моего класса. Этот класс очень полезен, и мне не разрешается проводить его рефакторинг, так как у меня нет времени (по крайней мере, моя компания не выделяет на это время).
Мне нужно использовать поддельный класс, но он выглядит так:
@Inject
protected ClassZ(ClassA classA, ClassB classB, ClassC classC,
ClassD classD, ClassE classE, ClassF classF,
ClassG classG, ClassH classH, ClassI classI, etc..)
public void complexMethod()
{
// reads from files using classA, does stuff with classB, etc.
}
Mockito не работает для меня, потому что те классы, которые вводятся, выполняют кучу работы: чтение из файлов, запись в файлы, хранение базы данных в памяти и т. д. c. Я знаю, это плохой код, но я застрял с , нуждающимся в реальных экземплярах моих классов. Аннотация @Spy все еще выполняет методы по умолчанию. Таким образом, boolean readFile
возвращает False
каждый раз.
Как мне избежать ада зависимости? Мне всегда нужно @Inject ввести все зависимости или использовать @AdditionalClasses
для их перечисления. Есть ли лучший способ?