赛普拉斯E2E测试不在gitlab.com上以CI模式运行

时间:2019-12-20 10:51:07

标签: javascript vue.js gitlab cypress

简介

我们很难在gitlab.com的CI运行程序中设置cypress。我们使用vue-cli的默认蓝图来搭建项目。我们尝试了各种不同的gitlab.yml配置。目前,我们用尽了CI分钟,因为我们尝试了许多不同的组合。

我们尝试了不同的docker映像(来自https://github.com/cypress-io/cypress-docker-images/),并遵循了Crypress的最佳实践,我们在此处找到了https://gitlab.com/cypress-io/cypress-example-docker-gitlab/

我们只是运气不好而已。在花费了几个小时之后,我们不确定是否可以通过vue-cli中的默认设置运行赛普拉斯。

我们还在vue repo上创建了一个问题,但该问题已关闭,供参考,您可以在此处查看:https://github.com/vuejs/vue/issues/10944

我们为问题报告填写了默认的vue模板,但是由于它不是真正的“ JavaScript”问题,因此很难正确填写。但是我们试图提供尽可能多的信息。在代码库中,您可以找到我们的结果。 HTML列是输出,而JS列是YML文件。希望您能以某种方式使用此信息

版本

2.6.10

复制链接

https://codepen.io/usamahamed/pen/WNbpdPE

复制步骤

这是gitlab CI管道结果,包括在codepen中 它给这个

CypressError: cy.visit() failed trying to load:
We failed looking for this file at the path:
/builds/room/web/room-ui/ 

1 个答案:

答案 0 :(得分:1)

检查您的.yaml文件,我认为您的应用程序未运行。

  1. 没有正在运行的应用程序日志
  2. 没有构建阶段实现
  3. test-e2e > before_script阶段没有启动应用程序任务

所以我建议:

  1. 检查构建阶段。您在哪里开始运行应用程序?
  2. 检查您的before_script,并添加步骤“ npm ci”,如下所示:

https://gitlab.com/cypress-io/cypress-example-docker-gitlab/blob/master/.gitlab-ci.yml 要么 https://github.com/cypress-io/cypress-example-kitchensink/blob/master/.gitlab-ci.yml

您还应该等待应用程序运行以开始测试。您可以为此使用wait-on模块:https://github.com/jeffbski/wait-on