Выбор элементов с помощью фермента при тестировании React

Что касается методов, связанных с ферментом и поиска селекторов, вот несколько вариантов:

  1. find(selector): этот метод в Enzyme позволяет найти один или несколько элементов в отображаемом дереве компонентов на основе селектора CSS. Он возвращает новую оболочку совпавших элементов.

Пример: wrapper.find('.my-class')

  1. findWhere(predicate): этот метод позволяет находить элементы на основе пользовательской функции предиката. Функция будет вызываться для каждого узла оболочки и должна возвращать trueдля элементов, которые вы хотите выбрать.

Пример: wrapper.findWhere((node) =>node.prop('data-testid') === 'my-test-id')

  1. filter(selector): этот метод фильтрует текущий набор совпадающих элементов на основе селектора CSS. Он возвращает новую оболочку, содержащую только те элементы, которые соответствуют селектору.

Пример: wrapper.find('.my-class').filter('.other-class')

  1. containsMatchingElement(node): этот метод проверяет, содержит ли текущая оболочка хотя бы один узел, соответствующий предоставленному узлу (или узлам).

Пример: wrapper.containsMatchingElement()

  1. containsAllMatchingElements(nodes): этот метод проверяет, содержит ли текущая оболочка все узлы, соответствующие предоставленным узлам.

Пример: wrapper.containsAllMatchingElements([, ])

  1. containsAnyMatchingElements(nodes): этот метод проверяет, содержит ли текущая оболочка хотя бы один узел, соответствующий любому из предоставленных узлов.

Пример: wrapper.containsAnyMatchingElements([, ])