vue-cli 的 e2e-cypress 插件
这个插件使用 Cypress 添加 e2e 测试支持。
Cypress 为运行 e2e 测试提供一套富交互界面,但是目前只支持在 Chromium 上运行测试。如果你有对多浏览器进行 e2e 测试的强烈需求,可以考虑选用基于 Selenium 的 @vue/cli-plugin-e2e-nightwatch。
-
vue-cli-service test:e2e使用
cypress run运行 e2e 测试。默认它通过一个可视化界面启动 Cypress 的交互模式。如果你想要以无头模式 (例如在 CI 的场景下) 运行测试,你可以加入
--headless选项。这个命令会自动以生产环境模式开启一个服务器来运行 e2e 测试。如果你连续运行多次测试而不会每次都重启服务器,你可以在一个终端运行
vue-cli-service serve --mode production启动服务器,然后使用--url选项指定服务器运行 e2e 测试。选项:
--headless 不带可视化界面在无头模式下运行 --mode 指定开发服务器应该运行的环境。(默认:生产环境) --url 通过给定的 URL 运行 e2e 测试,而不是自动开启开发服务器 -s, --spec (只适用于无头模式) 运行一个明确的 spec 文件。默认是 "all"额外的:
- 在 GUI 模式下,支持所有 Cypress CLI
cypress open的选项 - 在
--headless模式下,支持所有 Cypress CLIcypress run的选项
- 在 GUI 模式下,支持所有 Cypress CLI
我们已经预配置了 Cypress 在 <projectRoot>/test/e2e 放置大多数的 e2e 测试的相关文件。你可以查阅如何通过 cypress.json 配置 Cypress。
Cypress 不会和 vue-cli 为你的应用代码一样为你的测试文件加载 .env 文件。Cypress 支持一些定义环境变量的方式,但是最简单的一种就是使用 .json 文件 (cypress.json 或 cypress.env.json) 定义环境变量。注意这些变量是可以通过 Cypress.env 函数访问到的,而不是惯用的 process.env 对象。
vue add @vue/e2e-cypress