Пирамида тестирования на фронте выглядит так:
e2e
integration
unitE2E тестирование: Сквозное (end-to-end) тестирование, позволяет тестировать функционал приложения. Прокликивать отдельные фичи, запускать процессы и тд. Обычно для их написания использует Cypress или Selenium. Для тестирования добавляет отдельные атрибуты для элементов. Пример:
<input data-test-id="search-input" />Integration тестирование: Интеграционное тестирование, позволяет тестировать работу всего приложения через взаимодействие с
UI, совместимость с другими модулями(если например приложение разбито на микрофронты или использует общение с другими приложениями). Обычно для их написания используют тот же Cypress или самописные решения.Unit тестирование: Юнит тестирование, самое популярный вид тестов тестирование. Позволяет тестировать модули или определенные блоки. Конкретно на фронте тестирование классов, утилилок или компонентов. Чаще всего для юнит тестирования используют jest, react-testing-library.
Полезные статьи по тестированию:
Тестирование фронтенда: большой гайд
Трофей тестирования фронтенда
Какие инструменты и подходы использовать для тестирования фронтенда — рассказывают эксперты
7 основных тенденций в тестировании Web Front-End
#javascript #react #jest #cypress #selenium #unittest #e2e
