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

Chrome自动化测试出现NumberFormatException,求助WebDriverManager异常排查

问题排查与解决:Chrome自动化测试中的NumberFormatException

异常信息

17:10:40.226 [main] DEBUG io.github.bonigarcia.wdm.WebDriverManager - Driver to be downloaded chromedriver linux64
17:10:40.229 [main] ERROR io.github.bonigarcia.wdm.WebDriverManager - There was an error managing chromedriver linux64 (For input string: "linux64")
java.lang.NumberFormatException: For input string: "linux64"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

同时出现:

java.lang.NumberFormatException: For input string: "public" 

环境信息

  • 浏览器及版本:Chrome 123.0.6312.59
  • 操作系统及架构:Windows 11 64位
  • Selenium版本:3.141.59
  • WebDriverManager版本:4.4.3

调用代码

WebDriverManager.chromedriver().clearDriverCache().setup();
WebDriverManager.chromedriver().setup();

原因分析

  1. 版本兼容性冲突:WebDriverManager 4.4.3是2021年的旧版本,完全适配不了Chrome 123这类新版本。Chrome 115+之后,ChromeDriver的下载页面结构、版本命名规则发生了变化,旧版WDM的解析逻辑会把架构标识(比如linux64)或者页面中的其他字符串(比如public)误判成版本号去做数字转换,直接触发NumberFormatException。
  2. 重复调用冗余:代码里连续两次初始化并调用setup(),可能导致缓存或内部状态冲突,进一步加剧了解析错误的概率。

解决方法

  1. 升级WebDriverManager到最新稳定版:直接将WebDriverManager版本升级到5.x系列(比如5.6.0或更高),新版本已经适配了Chrome 115+的驱动下载逻辑,能正确区分版本号和架构信息,不会再出现字符串转数字的错误。
  2. 简化调用代码:只需要一次初始化和setup调用,重复调用没有实际意义,还可能引发不必要的状态问题。修改后的代码:
    WebDriverManager.chromedriver().clearDriverCache().setup();
    
  3. 可选:升级Selenium版本:虽然Selenium 3.141.59能兼容Chrome 123,但如果后续出现其他兼容性问题,可以考虑升级到Selenium 4.x版本,配合新版WebDriverManager使用会更稳定。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 14:18:16