You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium Grid节点无法从Hub访问问题求助

解决Selenium Grid节点注册成功但Hub无法连接的问题

我来帮你排查这个Selenium Grid的问题——你已经成功注册了节点,但Hub控制台显示连接失败,测试也启动不了新会话,咱们一步步来解决这些问题:

1. 修正Hub IP的格式问题

你启动节点的命令里,Hub IP被加了引号:http://"HUbip":4444/grid/register,这会导致URL解析错误,引号会被当成地址的一部分。直接去掉引号,换成Hub机器的实际IP,比如:

java -Dwebdriver.chrome.driver=d:\sel\new\chromedriver.exe -jar selenium-server-standalone-3.12.0.jar -role node -port 5566 -hub http://192.168.1.100:4444/grid/register

2. 确认ChromeDriver与Chrome版本兼容

Selenium 3.12.0对ChromeDriver和Chrome的版本有严格要求:

  • Chrome 67-69 对应 ChromeDriver 2.40-2.42
  • Chrome 70-72 对应 ChromeDriver 2.43-2.46
    如果版本不匹配,浏览器根本启动不起来,Hub自然会显示无法连接节点。你可以查看Chrome的版本(设置→关于Chrome),然后下载对应版本的ChromeDriver替换现有文件。

3. 指定Node的绑定IP

默认情况下,Node会绑定localhost,这时候Hub可能无法通过节点的公网/局域网IP访问它。启动Node时加上-host参数指定节点机器的实际IP,比如:

java -Dwebdriver.chrome.driver=d:\sel\new\chromedriver.exe -jar selenium-server-standalone-3.12.0.jar -role node -port 5566 -host 192.168.1.101 -hub http://192.168.1.100:4444/grid/register

这样Hub就能直接定位到节点的服务端口。

4. 双向验证端口连通性

你已经从节点telnet Hub的4444端口成功,但还要反过来从Hub机器telnet节点的5566端口,确认这个端口是开放的。有时候防火墙关闭了,但系统的网络策略、杀毒软件可能会拦截这个端口。

5. 查看日志定位细节

启动Hub和Node时加上日志参数,生成详细日志文件:

  • Hub启动命令:
java -jar selenium-server-standalone-3.12.0.jar -role hub -log hub.log
  • Node启动命令:
java -Dwebdriver.chrome.driver=d:\sel\new\chromedriver.exe -jar selenium-server-standalone-3.12.0.jar -role node -port 5566 -hub http://192.168.1.100:4444/grid/register -log node.log

打开日志文件,你能看到更具体的错误信息——比如是否有连接超时、浏览器启动失败的堆栈跟踪,这能帮你快速锁定问题根源。

6. 简化命令排查路径/端口问题

  • 确保chromedriver.exe的路径没有空格或特殊字符,如果有,用引号包裹路径:-Dwebdriver.chrome.driver="d:\sel\new\chromedriver.exe"
  • 暂时去掉-port 5566参数,使用默认端口5555,排除端口冲突或被占用的问题。

内容的提问来源于stack exchange,提问作者rakesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:40:47