Open azinit opened 4 years ago
Jest spyOn function
https://remarkablemark.org/blog/2018/04/10/jest-spyon-function/
https://medium.com/@hello_21915/testing-the-scrolltotop-component-in-react-with-enzyme-and-jest-5342fab570b4 https://github.com/facebook/react/issues/4971 https://github.com/enzymejs/enzyme/issues/1434 https://stackoverflow.com/questions/47823616/mocking-clientheight-and-scrollheight-in-react-enzyme-for-test https://stackoverflow.com/questions/45376974/what-is-the-best-way-to-test-window-scroll-event-handlers-with-enzyme https://stackoverflow.com/questions/46221210/jest-enzyme-how-to-test-at-different-viewports/51997030 https://github.com/testing-library/react-testing-library/issues/353 https://github.com/enzymejs/enzyme/issues/1940
Современное тестирование React-приложений
Серия статей, посвященная лучшим практикам тестирования в React:
1️⃣ Modern React testing, part 1: best practices 2️⃣ Modern React testing, part 2: Jest and Enzyme 3️⃣ Modern React testing, part 3: Jest and React Testing Library
В React-приложении много частей, которые следует тестировать.
Например, редьюсеры. С ними все просто - они сами по себе изолированы от остального кода.
С синхронными создателями действий - то же самое, а вот асинхронные - уже поинтереснее. Чтобы написать тесты для них, придется воспользоваться некоторыми redux-инструментами и научиться делать моки (заглушки) для аякс-запросов.
👉 Unit тестирование redux экшенов и редьюсеров (https://maxpfrontend.ru/vebinary/unit-testirovanie-redux-ekshenov-i-redyuserov/)
Не забудем и про компоненты. Для их тестирования потребуется библиотека enzyme. Заодно разберемся с тестированием снапшотами и симуляцией событий.
👉 Тестирование компонентов с помощью jest и enzyme (https://maxpfrontend.ru/vebinary/testirovanie-komponentov-s-pomoschyu-jest-enzyme/)
Полное руководство по модульному тестированию React-приложения.
1 часть: https://prglb.ru/1m2wt 2 часть: https://prglb.ru/338uu
Задали этот вопрос профессионалам, ответами делимся с вами:
https://github.com/react-spring/react-use-gesture/blob/master/test/Scroll.test.tsx