如何使用GitLab CI设置Selenium E2E测试?

jaz*_*ipc 6 selenium unit-testing docker gitlab-ci e2e-testing

我正在为网站前端开发一个Vue.js应用程序.

对于这个应用程序,我想使用单元和E2E测试.我用vue-cli构建了我的项目.

根据我的理解,vue-cli使用Karma进行单元测试,使用Nightwatch + Selenium进行E2E测试.

.gitlab-ci.yml看起来如下:

stages:
  - test

test:express:
  image: node:boron
  stage: test
  script:
    - cd backend/
    - npm install --progress=false
    - ./node_modules/.bin/jasmine

test:vue:
  image: node:boron
  stage: test
  script:
    - cd frontend/
    - npm install --progress=false
    - npm test
Run Code Online (Sandbox Code Playgroud)

npm test运行e2e和单元测试,并在本地计算机上运行.单元测试运行平稳,Selenium启动Chrome窗口并使用E2E测试.

问题是不知道如何在GitLab CI上运行E2E Selenium测试.它一直给我一个错误说:

Could not connect to Selenium Server. Have you started the Selenium Server yet?虽然它之前说过它已经创建了一个Selenium服务器.

如何在GitLab CI上运行E2E Selenium测试?如果无法实现,我可以在GitLab CI上运行哪种E2E?

Zed*_*TuX 0

您必须自己将 Selenium 添加到管道中才能使用它。

为此,您应该使用gitlab-selenium-server之类的东西,如存储库的自述文件中所述。

另一种选择是使用 GitLab CI 服务,如本博客文章中所述。