@vue/cli-plugin-e2e-cypress
Плагин e2e-cypress для vue-cli
Он добавляет поддержку E2E тестирования с помощью Cypress.
Cypress предлагает богатый интерактивный интерфейс для запуска E2E тестов, но в настоящее время поддерживается запуск тестов только в Chromium. При наличии жёстких требований к E2E тестированию в нескольких браузерах, обратите внимание на плагин @vue/cli-plugin-e2e-nightwatch, основанный на Selenium.
Внедряемые команды
vue-cli-service test:e2e
Запуск E2E тестов через
cypress run
.По умолчанию Cypress запускается в интерактивном режиме с графическим интерфейсом. Если необходимо запустить тесты в безголовом (headless) режиме (например, для CI), то следует указывать опцию
--headless
.Команда автоматически запустит сервер в режиме production для выполнения E2E тестов. Если требуется запускать тесты несколько раз без необходимости перезапускать сервер каждый раз, можно запустить сервер с
vue-cli-service serve --mode production
в одном терминале, а затем запускать E2E тесты на этом сервере с помощью опции--url
.Опции:
--headless запуск headless-режиме без GUI --mode указывает режим запуска сервера (по умолчанию: production) --url запускать E2E тесты с заданным URL вместо авто-запуска сервера -s, --spec (только в headless-режиме) запуск определённого файла. По умолчанию "all"
Дополнительно:
- В режиме GUI, все опции Cypress CLI для
cypress open
поддерживаются; - В режиме
--headless
, все опции Cypress CLI дляcypress run
поддерживаются.
Примеры:
- Запуск Cypress в headless-режиме для конкретного файла:
vue-cli-service test:e2e --headless --spec tests/e2e/specs/actions.spec.js
- В режиме GUI, все опции Cypress CLI для
Конфигурация
Cypress пред-настроен под размещение всех файлов, связанных с E2E тестированием, в каталоге <projectRoot>/tests/e2e
. При необходимости можно настраивать Cypress через cypress.json
.
Переменные окружения
Cypress не загружает .env файлы для ваших файлов тестов, как это делает vue-cli
для кода приложения. Cypress поддерживает несколько способов для определения переменных окружения, но самым простым будем использование .json файлов (cypress.json
или cypress.env.json
) для определения переменных окружения. Обратите внимание, что эти переменные доступны через функцию Cypress.env
, а не через объект process.
.
Установка в уже созданный проект
vue add e2e-cypress