Возможны ли сквозные тесты с использованием react-testing-library?

#react-testing-library

#react-testing-library

Вопрос:

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

Я буду благодарен, если получу некоторую полезную информацию об этом.

Ответ №1:

В документах RTL есть пример использования React Router: https://testing-library.com/docs/example-react-router / так что, похоже, это возможно. Тем не менее, я бы рекомендовал использовать выделенную библиотеку тестирования e2e, такую как Cypress, для выполнения этой работы. Для Cypress существует интеграция с RTL, поэтому вы можете следовать тем же принципам тестирования, которые поддерживает RTL.

Комментарии:

1. Хороший ответ, хотя недостаток тестирования e2e с помощью cypress, selenium или другого значительно медленнее и в совокупности ограничивает тесты ci для каждой сборки. Несмотря на то, что библиотека тестирования react и enzyme не являются настоящими браузерами, библиотека тестирования react и enzyme обеспечивают облегчение, эквивалентное e2e, и тесты могут быть искусно созданы для эмуляции почти эквивалентного потока e2e с учетом ожиданий большинства компонентов . E2e все еще необходим, но много времени и процесс ci можно сократить и сохранить.