首页 > 解决方案 > 让 Selenium Hub 使用第一个可用节点而不是循环?

问题描述

我有 1 个 Selenium Hub 和 2 个 Chrome 节点分别在端口 5900 和 5901 上运行。

当我运行自动化测试时,它将请求分派到运行在 5900 的节点。当测试完成并且我想再次运行它时,它分派到端口 5901 的节点。这意味着我必须保持两个 VNC 查看器运行,一个对于每个节点。

如果 Selenium Hub 是“免费的”,我希望它始终使用 5900。

这些是我在 docker-compose.yml 上使用的图像和配置:

hub:
  image: selenium/hub:3
chrome:
  image: selenium/node-chrome-debug:3
  volumes:
    - /dev/shm:/dev/shm
  depends_on:
    - hub
  environment:
    - HUB_HOST=hub
    - VNC_NO_PASSWORD=1
  ports:
    - ${DOCKER_GATEWAY_IP}:5900-5901:5900
  extra_hosts:
    - "${HOST_SINGLE_TESTS} ${HOST_MULTI_TESTS}:${DOCKER_GATEWAY_IP}"

PS:我运行两个节点,因为有时我并行运行测试。

标签: seleniumselenium-grid

解决方案


推荐阅读