通过 Docker Selenium 使用 Dev 和 Beta 渠道浏览器
Docker Selenium 浏览器 Beta 和 Dev 通道版本现在会定期发布到 Docker Hub,并每两天更新一次。这使测试人员和开发人员可以使用 Docker 等容器工具,在 Google Chrome、Mozilla Firefox 和 Microsoft Edge 的正式版本发布之前,在预发布版本上测试其应用程序。这使团队能够保持领先地位,并在 CI 环境中在这些问题影响用户之前发现潜在的严重问题。
什么是“发布通道”?
以下是有关发布通道的一些背景信息:Google、Mozilla 和 Microsoft 都为其各自的浏览器版本维护不同的“通道”。大多数最终用户使用“稳定”通道。“稳定”通道版本已通过严格的测试,这些版本被认为是“可用于生产环境的”。到目前为止,这是测试人员或开发人员在使用 Docker Selenium 时的唯一选择。今天,我们很高兴地宣布,团队还可以测试尚未发布给大众的这些浏览器的版本。这些是 Beta 和 Dev 通道。
为了清楚起见,以下是 Google 对这 3 个通道的描述,来自他们的“Chrome 发布通道”页面
稳定通道: 此通道已获得 Chrome 测试团队的全面测试和认可,是避免崩溃和其他问题的最佳选择。它大约每两到三周更新一次次要版本,每六周更新一次主要版本。
Beta 通道: 如果您有兴趣在风险最小的情况下了解下一步发展,那么 Beta 通道是您的最佳选择。它大约每周更新一次,主要更新每六周发布一次,比稳定通道提前一个多月。
Dev 通道: 如果您想快速了解正在发生的事情,那么您需要使用 Dev 通道。Dev 通道每周更新一到两次,它显示我们现在正在进行的工作。主要版本之间没有滞后,无论我们有什么代码,您都会得到。虽然此版本确实经过测试,但它仍然存在 bug,因为我们希望人们尽快看到新内容。
独立使用
要在独立模式下使用这些新的 Docker Selenium 容器镜像,请运行以下命令
Chrome Beta
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-chrome:beta
Chrome Dev
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-chrome:dev
Firefox Beta
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-firefox:beta
Firefox Dev
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-firefox:dev
Edge Beta
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-edge:beta
Edge Dev
$ docker run --rm -it -p 4444:4444 -p 7900:7900 --shm-size 2g selenium/standalone-edge:dev
Selenium Grid
要在 Selenium Grid 中运行这些容器镜像,我们将使用 docker-compose。例如,此示例显示如何在 Beta 通道上使用 Chrome、Firefox 和 Edge 运行 Selenium Grid
docker-compose-v3-beta-channel.yml
# To execute this docker-compose yml file use `docker-compose -f docker-compose-v3-beta-channel.yml up`
# Add the `-d` flag at the end for detached execution
# To stop the execution, hit Ctrl+C, and then `docker-compose -f docker-compose-v3-beta-channel.yml down`
version: "3"
services:
chrome:
image: selenium/node-chrome:beta
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
edge:
image: selenium/node-edge:beta
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
firefox:
image: selenium/node-firefox:beta
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
selenium-hub:
image: selenium/hub:latest
container_name: selenium-hub
ports:
- "4442:4442"
- "4443:4443"
- "4444:4444"
要在更前沿(因此可能更多 bug)的 Dev 通道上运行,只需将“beta”标签替换为“dev”即可。
支持
这些 Beta 和 Dev 镜像代表预发布浏览器和 WebDrivers,不能保证 100% 稳定。如果您在使用这些镜像时遇到任何问题,Selenium 社区的支持有限,并且取决于浏览器供应商。但是,如果您认为问题与 Selenium 相关,请通过各种支持渠道与我们联系。