You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Jenkins测试环境Chrome版本不兼容引发SessionNotCreatedException求助

解决ChromeDriver与Chromium版本不兼容导致的SessionNotCreatedException

首先,这个报错的核心原因非常明确:你的ChromeDriver版本和Chromium版本完全不匹配。先梳理下你当前的环境版本:

  • Chromium版本:Chromium 64.0.3282.119
  • ChromeDriver版本:ChromeDriver 2.33 (0)

ChromeDriver对Chrome/Chromium的版本有严格的对应规则,ChromeDriver 2.33仅支持Chrome 60~62版本,而你现在的Chromium已经是64.x,远远超出了它的支持范围,所以才会抛出这个错误:

<<< ERROR! org.openqa.selenium.SessionNotCreatedException: session not created exception: Chrome version must be >= 65.0.3325.0

具体解决步骤

  • 同步ArchLinux包,更新ChromeDriver到匹配版本
    Arch是滚动发行版,系统里的chromedriver包默认会和chromium版本保持同步。你可以先执行以下命令更新系统包:

    sudo pacman -Syu chromedriver
    

    更新完成后,再次执行chromedriver -vchromium -version,确认两者版本处于兼容区间(比如Chromium 64.x对应ChromeDriver 2.35或2.36)。

  • 手动替换ChromeDriver(如果pacman更新无效)
    如果系统源里的ChromeDriver版本还是不匹配,你可以手动下载对应版本的ChromeDriver:

    1. 找到支持Chromium 64.0.3282.119的ChromeDriver版本(比如2.35或2.36,这两个版本分别支持Chrome 6264、6365)
    2. 解压下载的压缩包,将chromedriver可执行文件替换到系统的PATH路径下(比如/usr/bin/
    3. 执行chmod +x /usr/bin/chromedriver确保权限正确
  • 验证并重新运行测试
    替换完成后,先在测试节点上手动运行版本检查命令:

    chromedriver -v
    chromium -version
    

    确认版本匹配后,重新触发Jenkins的测试任务,应该就能正常创建会话了。

长期维护建议

因为Arch是滚动更新系统,建议定期执行sudo pacman -Syu同步所有包,这样能保证Chromium和ChromeDriver始终保持版本兼容。另外,你可以在Jenkins任务中添加一个前置步骤,先检查两者版本是否匹配,提前规避这类问题。

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

火山引擎 最新活动