Соглашение о добавлении идентификаторов тестов во вложенные компоненты React в иерархии - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь написать модульные тесты для компонентов React, используя react-test-library, а также планирую писать будущие интеграционные / сквозные тесты.

Предположим, у меня есть компоненты Foo, Bar и Baz со следующей иерархией в приложении:

Foo
  Bar
     Baz
     Baz
  Bar
     Baz

Я назначаю идентификатор теста компоненту Baz: <div data-testid="baz">...</div>

Для модульных тестов для Bar, я делаю утверждения о некоторых компонентах Baz, которые он отображает, находя правильные элементы с помощью getByTestId("baz"). (Получение по тексту / роли не всегда удобно / возможно)

Затем, для сквозного теста, предположим, я хотел бы найти определенный c Baz компонент для всего приложения, но есть несколько Baz компонентов с одним и тем же идентификатором теста, что делает его неоднозначным.

Как я могу определить идентификаторы тестов в компонентах и ​​использовать их для тестов на нескольких уровнях в иерархии компонентов?

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