首页 > 解决方案 > 在 CI / CD 管道中运行 cypress 测试的最佳实践是什么?

问题描述

我在一家私营企业工作,希望将CypressE2E 测试与我们的gitlabCI/CD 管道集成。

由于 cypress 需要安装二进制 zip 文件,我不能简单地运行npm i并希望一切正常。

我面临 3 个选项,不确定哪一个是理想的方式:

  1. 在 CI 期间以某种方式包含 cypress 二进制文件,缓存它们,并将应用程序映像部署到测试和开发环境。一个用于测试,一个用于实际的应用程序部署。
    (如果可能的话,这是最快的方法,因为它不需要额外的图像构建,我很想看到一个 gitlab-ci.yml 示例:))

  2. 使用 2 个不同的图像 -

    • nodejs-8-rhel7图像 - 将用于应用程序部署(目前正在使用)
    • cypress-included图像 - 将包括 cypress 以及应用程序代码(并将用于测试)。
      在这种情况下,我必须构建应用程序映像两次,一次使用 cypress,另一次不使用,这看起来是一个缓慢的过程。
  3. cypress-included映像用于应用程序和测试部署。
    由于我们目前的应用基础镜像是nodejs-8-rhel7,恐怕更改基础镜像会造成一些麻烦(nodejs版本差异等..)

以上哪个是最好的选择?你有更好的解决方案吗?

谢谢!

标签: node.jscypressenterprise

解决方案


推荐阅读