启动ChromeDriver时--url-base=/wd/hub参数的作用是什么?
关于ChromeDriver
--url-base=/wd/hub 参数的作用 其实这个参数的核心作用是指定ChromeDriver对外提供WebDriver协议接口的URL路径前缀,说白点就是让ChromeDriver把所有WebDriver相关的请求都映射到/wd/hub这个路径下。
具体来说,你可以这么理解:
- 早期的Selenium Server(比如Selenium RC那个年代)默认就用
/wd/hub作为WebDriver命令的请求路径前缀。后来像Codeception这类测试框架为了保持兼容性,依然期望WebDriver服务的接口路径是这个格式。 - 如果不设置这个参数,ChromeDriver默认的接口路径是根路径
/,这时候Codeception这类框架发送的请求(比如http://localhost:9515/wd/hub/session)就会找不到对应的接口,直接导致测试失败。 - 总结一下,这个参数就是为了让ChromeDriver的接口路径适配那些依赖Selenium传统路径规范的测试工具/框架,不用你去修改框架的配置,调整ChromeDriver的路径就能让它们正常通信。
你提到在ChromeDriver官方FAQ里看到了wd/hub但没找到解释,其实官方是默认大家了解Selenium生态的历史兼容性背景——毕竟很多老工具和框架都是跟着Selenium的路径规范做的,ChromeDriver加这个参数就是为了兼容这些场景,减少用户的配置成本。
内容的提问来源于stack exchange,提问作者lomse
相关产品推荐
相关产品推荐

