启动ChromeDriver后Selenium抛出Runtime.callFunctionOn响应异常求助
解决Selenium Java中"result.webdriverValue.value list is missing or empty"错误
从报错信息可明确核心问题:Chrome浏览器版本(119.0.6045.106)与ChromeDriver版本(118.0.5993.70)不匹配,这是触发该WebDriverException的主要原因。Selenium要求ChromeDriver的主版本号必须和Chrome浏览器完全一致。
具体解决步骤
- 下载对应版本的ChromeDriver
获取与你的Chrome浏览器版本完全一致的ChromeDriver(比如Chrome是119.x系列,就下载119.x版本的ChromeDriver)。 - 替换项目中的驱动文件
将项目中旧的ChromeDriver替换为新下载的版本,确保代码中配置的驱动路径指向新文件。 - 验证版本匹配
执行chromedriver --version查看驱动版本,同时在Chrome浏览器的「设置→关于Chrome」中确认浏览器版本,确保两者主版本号一致。 - (推荐)使用WebDriverManager自动管理驱动
手动维护版本容易出错,可以引入WebDriverManager依赖,它会自动检测当前浏览器版本并下载匹配的ChromeDriver。示例代码:
Maven依赖配置:import io.github.bonigarcia.wdm.WebDriverManager; import org.openqa.selenium.chrome.ChromeDriver; public class TestInitializer { public static void main(String[] args) { WebDriverManager.chromedriver().setup(); ChromeDriver driver = new ChromeDriver(); // 测试逻辑 driver.quit(); } }<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.6.0</version> <!-- 使用最新稳定版 --> </dependency>
额外排查点
- 关闭所有Chrome进程后重新启动测试,避免残留进程干扰驱动初始化
- 若问题仍存在,尝试升级Selenium到最新稳定版,确保Selenium版本与Chrome、ChromeDriver版本兼容
内容的提问来源于stack exchange,提问作者lahimadhe
相关产品推荐
相关产品推荐

