Прежде всего, BrowserRouter
не должен использоваться в модульных тестах.Иерархия компонентов должна позволять вместо этого использовать MemoryRouter
.Затем компоненты маршрута могут быть проверены путем изменения маршрутов.
В качестве альтернативы, анонимная функция может быть достигнута и протестирована отдельно:
const RouteComponent = wrapper.find(Route).at(0).props().component;
const routeComponentWrapper = shallow(<RouteComponent/>);
...
Проверяемость можно улучшить, высушив код.Поскольку компоненты в обоих маршрутах похожи, они могут быть созданы одним компонентом более высокого порядка, который добавляет customProperty={BlaBlaBla}
prop и может быть отслежен в тестах.