Cypress Docker:在您的系统上找不到 Chrome

Doc*_*Who 3 docker cypress

我正在尝试在本地 docker 容器中运行我的 Cypress 测试,但在尝试在 Chrome 中运行时仍然遇到问题,我运行的命令是:

docker run -it -v $PWD:/e2e -w /e2e cypress/included:10.3.1 --browser chrome
Run Code Online (Sandbox Code Playgroud)

根据https://github.com/cypress-io/cypress-docker-images/tree/master/included,它应该有chrome、firefox和edge,但我得到:

无法运行,因为您输入了无效的浏览器名称。

浏览器:您的系统上未找到 chrome,或者 Cypress 不支持 chrome。

赛普拉斯支持以下浏览器:

  • 电子
  • 铬合金
  • 铬:金丝雀
  • 边缘
  • 火狐浏览器

您还可以使用自定义浏览器: https ://on.cypress.io/customize-browsers

您的系统上找到的可用浏览器有:

  • 电子

我在本地安装了 Chrome 和 Firefox。我可以使用 Electron 通过 docker 运行测试,但我正在尝试运行需要在 Chrome 上运行的灯塔测试。

难道我做错了什么?我尝试了另外一些 cypress/included v 10 图像,但没有任何运气。如果这有什么区别的话,我正在 Macbook 上运行。

如果我不使用 docker,只打开 Cypress,我就可以在 Chrome 上正常运行。

kre*_*ema 6

如果您的处理器架构是arm64,则cypress/浏览器docker镜像不包含任何浏览器。

原因是 Dockerfile 中的以下行:

RUN node -p "process.arch === 'arm64' ? 'Not downloading Chrome since we are on arm64: https://crbug.com/677140' : process.exit(1)" || 
Run Code Online (Sandbox Code Playgroud)

Cypress 已经对此发表了评论,并要求支持该架构。请参阅此处:https://bugs.chromium.org/p/chromium/issues/detail ?id=677140#c19