#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 можно сократить и сохранить.