WebMvcTest пытается создать несвязанные зависимости Autowired - PullRequest
0 голосов
/ 04 марта 2020

Сценарий выглядит следующим образом.

У меня есть контроллер, который я хочу проверить, который зависит от одного сервиса, внедренного через конструктор. Самостоятельно внедренный сервис зависит от другого сервиса, внедренного через его конструктор. Во время выполнения автоматическая инъекция создает сервисы и внедряет их по назначению.

Проблема в том, что при тестировании контроллера в модульном тесте я не могу просто посмеяться над сервисом, от которого контроллер напрямую зависит, по какой-то причине autowire пытается создать всю цепочку, если я не предоставлю имитацию для всех зависимостей.

Я бы ожидал, что если бы в моем тесте был @MockBean для всех прямых зависимостей контроллера, этого было бы достаточно, но, похоже, этого не было дело. Тест должен обеспечить макеты для каждой зависимости в графе.

Это не большая проблема в этом простом случае, но становится очень проблематичной c, когда в зависимости находятся десятки сервисов и компонентов. graph.

Как заставить autowire и WebMvcTest остановиться на верхнем уровне графика, когда все прямые зависимости проверяются?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...