Cypress在本地运行良好。当我尝试在circle-ci管道中运行它时,它存在许多问题。首先,这是我工作流程的相关部分:
orbs:
cypress: cypress-io/cypress@1.19.2
workflows:
version: 2.1
commit:
jobs:
- cypress/install:
install-command: 'npm install --no-optional --unsafe-perm'
- cypress/run:
requires:
- cypress/install
start: 'lerna run start --parallel'
当我在circle-ci中查看操作时,它已成功编译,但立即取消了
project/applicable-folder: ℹ 「wdm」: Compiled successfully.
Build was canceled
在构建过程中,我注意到这一行
project/applicable-folder: Failed to load /root/project/.env.
.env绝对存在。
npx cypress run
确实在此之后运行,但是所有测试都失败了,因为即使cy.visit('/');
的测试也失败了。
为什么无法成功访问env文件?我是否错过了允许该步骤运行的步骤?我什至应该允许它运行吗?我不确定如何进行。
我也尝试过使用构建而不是开始,但这并不能更好地工作。
我还使用了手动策略:
test:e2e: 码头工人: -图片:docker-image 脚步: - 查看 -restore_cache: 按键: -v2-deps-{{.Branch}}-{{checksum“ package-lock.json”}} -v2-deps-{{.Branch}}- -v2-deps- -运行:npm ci -save_cache: 密钥:v2-deps-{{.Branch}}-{{校验和“ package-lock.json”}} 路径: -〜/ .npm -〜/ .cache - 跑: 名称:运行用户验收测试 命令:npm run cy:run
这将导致需要安装Xvfb。
这是否意味着只要安装了它就可以工作?我希望能使用orb版本。
编辑:我尝试了库start-server-and-test
。
脚本如下
"cy:pipeline": "start-server-and-test up http-get://localhost:8080 cy:run"
"cy:run": "cypress run --headless --record"
"up": "lerna run start --parallel"
新的柏树/奔跑
- cypress/run:
requires:
- cypress/install
record: true
command: 'npm run cy:pipeline'
但是我一直收到相同的错误,
答案 0 :(得分:0)
尝试观看{ci3} YouTube官方频道关于赛普拉斯集成的精彩介绍,这对解决您的问题会有所帮助
答案 1 :(得分:0)
我认为webpack开发服务器即将退出,这react-scripts
偶然吗?
答案 2 :(得分:0)
解决方案很简单。
我要做的就是将安装命令从cypress/install
移到cypress/run
。
- cypress/install
- cypress/run:
requires:
- cypress/install
start: 'lerna run start --parallel'
install-command: 'npm install --no-optional --unsafe-perm'