Selenium Grid 4获取测试节点URL失败问题求助
Selenium Grid 4 获取测试节点URL的可行方法
方法1:调用W3C标准会话信息接口
Grid 4全面采用W3C协议,替代了Grid 3的非标准API,通过以下请求可直接获取会话关联的节点信息:
- 请求方式:
GET - 请求URL:
http://<Grid-Hub地址>:4444/session/<会话ID> - 示例:
http://10.10.10.10:4444/session/9f7d1d2bbc26720fe69e869ae9ef1c56 - 解析结果:返回的JSON响应中,
capabilities字段下的se:nodeHost(节点主机)和se:nodePort(节点端口)可拼接为测试节点的完整URL。
方法2:查询Grid Hub状态接口批量获取
若需要查看所有会话与节点的对应关系,可使用状态API:
- 请求方式:
GET - 请求URL:
http://<Grid-Hub地址>:4444/status - 解析结果:
- 在
value→sessions数组中,每个会话对象的capabilities字段包含对应节点的se:nodeHost和se:nodePort; value→nodes数组会列出所有注册的节点信息,可通过会话ID关联到具体节点。
- 在
关键注意事项
- K8s环境中需确认Grid Hub的Service访问地址(如NodePort、Ingress或ClusterIP,根据部署配置调整),确保请求能正常到达Hub;
- Grid 4默认强制启用W3C模式,完全废弃了Grid 3的
/grid/api/testsession这类非标准接口,必须使用上述合规接口; - Docker部署时需检查容器端口映射、K8s服务的端口转发配置,避免出现端口无法访问的问题。
内容的提问来源于stack exchange,提问作者RoToon
相关产品推荐
相关产品推荐

