Установка Cypress через npm

Cypress распространяется как npm-пакет и устанавливается через менеджер пакетов Node.js. Для корректной работы необходима установленная среда Node.js и доступ к npm-репозиторию.

Предустановки и требования

Минимальной базой служит Node.js версии LTS или выше. Cypress не зависит от глобальной установки других тестовых фреймворков, однако использует собственную среду выполнения, поэтому наличие конфликтующих инструментов не влияет на установку. Желательно предварительно инициализировать проект с помощью npm init для создания package.json, где будут храниться зависимости и скрипты.

Базовая установка

Установка Cypress выполняется стандартной командой:

npm install cypress --save-dev

Флаг --save-dev помещает пакет в список зависимостей разработки, поскольку Cypress применяется исключительно на этапе тестирования и не включается в боевые сборки. После завершения установки в каталоге node_modules появится бинарь Cypress и набор связанных модулей.

Установка определенной версии

Контроль версии обеспечивает повторяемость тестов и стабильность окружения. Установка конкретного релиза осуществляется в виде:

npm install cypress@<версия> --save-dev

Вместо <версия> указывается номер релиза, опубликованный в npm. Такая практика позволяет синхронизировать инфраструктуру между машинами разработчиков и средами CI.

Первичный запуск и подготовка структуры

После инсталляции Cypress предоставляет исполняемый бинарь cypress в node_modules/.bin. Первичный запуск выполняется через npm-скрипт или напрямую:

npx cypress open

При первом запуске формируется базовая структура каталога cypress, содержащая директории e2e или integration (в зависимости от версии), а также конфигурационные файлы. Эта структура автоматически создается без необходимости ручного вмешательства.

Добавление npm-скриптов

Для удобства применения Cypress интегрируется в package.json через сценарии:

{
  "scripts": {
    "cypress:open": "cypress open",
    "cypress:run": "cypress run"
  }
}

Использование npm-скриптов упрощает запуск в локальной среде и на сервере непрерывной интеграции.

Проверка корректности и кеширование

При установке Cypress загружает бинарный пакет, оптимизированный под операционную систему. Этот бинарь кешируется в пользовательском каталоге для ускорения последующих инсталляций. Проверка корректности установки заключается в выполнении команды npx cypress verify, которая инициирует процедуру валидации бинарей и зависимостей.

Особенности сетевых окружений

В корпоративных сетях установка может сталкиваться с прокси и ограничениями доступа к npm. Cypress поддерживает настройку переменных окружения HTTP_PROXY, HTTPS_PROXY и NO_PROXY. Дополнительно доступен офлайн-режим, предполагающий предварительное скачивание бинаря и указание локального пути для установки.

Интеграция с инструментами CI

Установка через npm одинаково подходит для локальной среды и CI-серверов. В конфигурациях CI достаточно выполнить npm ci или npm install, затем запускать тесты через cypress run. Использование npm ci предпочтительнее, так как цель состоит в строгом воспроизведении зависимостей по package-lock.json.

Обновление Cypress

Обновление производится командой:

npm install cypress@latest --save-dev

Перед обновлением рекомендуется сверить список изменений релиза и адаптировать конфигурационные файлы или тестовые спецификации при наличии несовместимых изменений. Обновление не требует повторной инициализации проекта и сохраняет существующую структуру.

Удаление и очистка

Удаление Cypress выполняется через:

npm uninstall cypress

При необходимости очистки кеша бинарей используется команда:

npx cypress cache clear

Очистка избавляет от старых бинарей и уменьшает размер дискового пространства, что удобно для автоматизированных сборок и контейнеризированных сред.