Тестирование

В React и Next.js существует несколько типов тестов, каждый из которых имеет своё назначение и варианты использования. На этой странице представлен обзор типов тестов и популярных инструментов для тестирования вашего приложения.

Типы тестов

  • Модульное тестирование (Unit testing) предполагает тестирование отдельных модулей (или блоков кода) изолированно. В React модулем может быть отдельная функция, хук или компонент.
    • Тестирование компонентов (Component testing) — это более узконаправленный вид модульного тестирования, где основным объектом тестирования являются React-компоненты. Это может включать проверку рендеринга компонентов, их взаимодействия с пропсами и поведения в ответ на действия пользователя.
    • Интеграционное тестирование (Integration testing) предполагает проверку совместной работы нескольких модулей. Это может быть комбинация компонентов, хуков и функций.
  • Сквозное тестирование (End-to-End, E2E Testing) предполагает проверку пользовательских сценариев в среде, имитирующей реальные условия, например в браузере. Это означает тестирование конкретных задач (например, процесс регистрации) в среде, приближенной к боевой.
  • Снэпшот-тестирование (Snapshot testing) включает захват рендеренного вывода компонента и сохранение его в файл снэпшота. При запуске тестов текущий рендер компонента сравнивается с сохранённым снэпшотом. Изменения в снэпшоте указывают на неожиданные изменения в поведении.

Руководства

Ознакомьтесь с руководствами ниже, чтобы узнать, как настроить Next.js с этими популярными инструментами тестирования: