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

如何使用Selenoid在Safari浏览器上运行Selenium测试?

Safari自动化测试在Windows/Linux的解决方案

核心限制说明

Safari是Apple专属浏览器,其官方驱动SafariDriver仅支持macOS系统,Windows/Linux没有官方的Safari发行版,Selenoid也无法提供合法的Safari容器镜像(受Apple许可协议限制),这是你在Linux上用Selenoid启动Safari测试失败的根本原因。

针对报错的排查点

你遇到的Could not start a new session报错,大概率是因为Selenoid找不到可用的Safari运行环境,可先做以下检查:

  • 执行 curl http://localhost:4444/wd/hub/status 验证Selenoid服务是否正常启动
  • 查看Selenoid配置文件,确认是否错误指定了不存在的Safari镜像

可行解决方案与变通方法

1. 切换到macOS运行环境

这是最可靠的原生Safari测试方案:

  • 本地macOS机器:终端执行 safaridriver --enable 开启自动化权限,然后配置Selenide连接本地SafariDriver(无需Selenoid)
  • CI/CD场景:使用支持macOS的运行器(如GitHub Actions的macos-latest、GitLab CI的macOS执行器),在任务中先启用SafariDriver,再运行测试

2. 采用云端跨浏览器测试平台

选择提供Safari自动化测试的云端服务,直接在平台上配置测试任务,无需自行维护Safari运行环境,可覆盖Windows/Linux机器发起测试的需求。

3. 近似替代方案(非原生Safari)

如果无法使用macOS或云端服务,可考虑以下近似模拟方案:

  • 使用基于WebKit内核的开源浏览器(如Epiphany、Midori),这类浏览器与Safari共享内核,但UI和部分行为存在差异,仅适合基础兼容性验证
  • 使用Playwright的WebKit镜像:Playwright提供了Docker化的WebKit环境,可在Linux上运行,能较接近Safari的内核行为,可直接用Playwright编写测试,或结合Selenide适配使用

内容的提问来源于stack exchange,提问作者Владислав Загородний

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 16:45:36