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

Testcontainers搭配WebDriver使用时Chrome启动报错及浏览器支持问题咨询

Testcontainers浏览器容器使用问题解答

一、Chrome启动超时报错解决方案

你可以按照以下步骤逐一排查问题:

  • 配置匹配校验:你贴出的代码中传入的是FirefoxOptions,但错误日志显示实际在申请Chrome会话,先确认运行代码和配置是否一致,要启动Chrome就传入对应ChromeOptions,不要混用不同浏览器的配置项。
  • 驱动版本兼容:日志中的ChromeDriver版本为2.14,该版本仅支持Chrome 39~42,和Testcontainers默认拉取的最新Chrome镜像版本完全不匹配。你需要明确指定兼容的镜像版本,修改后的参考代码如下:
    BrowserWebDriverContainer<?> container = new BrowserWebDriverContainer<>("selenium/standalone-chrome:114.0")
      .withCapabilities(new ChromeOptions())
      .withRecordingMode(VncRecordingMode.RECORD_ALL, new File("target"), VncRecordingFormat.MP4)
      .withStartupTimeout(Duration.ofMinutes(10));
    
  • 网络配置排查:你当前配置了自定义新建网络,可能导致容器端口连通性检查出现异常,先去掉withNetwork(Network.newNetwork())配置,使用默认桥接网络验证是否可以正常启动,再根据实际需求调整网络配置。
  • Docker资源检查:确保Docker运行环境分配的内存不低于2GB,Selenium浏览器容器运行需要足够的内存资源,内存不足会直接导致启动超时。

二、BrowserWebDriverContainer浏览器支持说明

官方默认的BrowserWebDriverContainer仅预装了Chrome和Firefox两种浏览器的适配支持,Edge、Yandex浏览器没有官方默认配置。
如果需要使用Edge浏览器,可以直接基于Selenium官方提供的selenium/standalone-edge镜像自定义容器,搭配对应EdgeOptions即可正常使用;Yandex浏览器需要你自行构建包含Yandex浏览器和对应驱动的Docker镜像,再通过Testcontainers加载自定义镜像实现支持。

内容的提问来源于stack exchange,提问作者Александр Денисов

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 05:48:05