[我是giltab-ci和cypress的新手,我试图用gitlab-ci验证cypress测试,我目前拥有gitlab-ci.yml脚本:
image:docker:latest
服务:-docker:dind
变量:npm_config_cache:“ $ CI_PROJECT_DIR / .npm”CYPRESS_CACHE_FOLDER:“ $ CI_PROJECT_DIR /缓存/赛普拉斯”
阶段:-建立-测试
缓存:路径:-.npm-缓存/赛普拉斯-node_modules
安装:图像:cypress / base:12.16.1阶段:建立脚本:-npm ci-$(npm bin)/ cypress缓存路径-$(npm bin)/赛普拉斯缓存列表-$(npm bin)/ cypress验证
cypress-e2e:阶段:测试图像:cypress / base:12.16.1脚本:-$(npm bin)/ cypress run
工件:路径:-柏树/屏幕截图-柏树/影片expire_in:1天
test:e2e:阶段:测试图片:柏树/浏览器:chrome67脚本:-$(npm bin)/ cypress run-浏览器镶边工件:路径:-柏树/屏幕截图-柏树/影片expire_in:1天
和我一样cypress.json:{“ baseUrl”:“ http://localhost:3000”}
不幸的是,当gitlab管道尝试运行我的赛普拉斯测试时,它抛出以下错误:
Cypress无法验证此服务器正在运行:
http://localhost:3000我们正在验证此服务器,因为它已配置为您的
baseUrl
。在运行测试之前,赛普拉斯会自动等待直到服务器可访问为止。我们将尝试再连接3次...我们将尝试再连接2次...我们将尝试再连接1次...赛普拉斯无法验证您的服务器正在运行。请启动该服务器,然后再次运行赛普拉斯。
仅供参考,错误消息是不同的Please start this server and then run Cypress again
。问题是-您在docker内部没有运行您的App的情况下运行测试!因此,您需要重新配置* .yml文件并根据运行应用程序的方式添加命令,例如npm start