В наши дни разработчики склонны считать, что написание тестов неизбежно. В React протестировать компонент относительно просто, но для нас не существует определенного руководства по тестированию контейнера (связанного компонента). Здесь я собираюсь поделиться некоторыми своими идеями, вдохновленными несколькими пионерами в этой конкретной теме.

Контейнер состоит из трех основных частей: mapStateToProps, mapDispatchToProps и connect. Поскольку у нас уже должны быть собственные тесты для reducers, actions и selectors, нам не нужно их здесь тестировать. Что нам нужно убедиться:

  1. И контейнер, и обернутый дочерний компонент должны быть успешно отрисованы.
  2. Как Шон Мили прокомментировал Github, убедитесь, что ключи наших состояний и действий, передаваемые обернутому компоненту, верны.

Вот пример контейнера:

Давайте для этого напишем тесты с Jest:

Я думаю, что этого должно хватить, чтобы правильно протестировать контейнер. Что касается connect, я считаю, что он должен работать, как рекламируется, без тестирования.

Благодарим TaopaiC за просмотр этого сообщения перед публикацией.