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

Protractor 5.0.1在Safari 11(Mac 10.13)下无法启动的问题求助

解决SafariDriver无法启动的问题(适配你的环境配置)

我之前处理过不少类似的SafariDriver启动问题,结合你给出的环境配置(Protractor 5.0.1、Safari 11、MacOS 10.13、Selenium 3.0.1),以下是经过验证的可行解决方案,你可以一步步尝试:

1. 重新确认Safari的自动化权限配置

命令行执行safaridriver --enable只是基础步骤,还需要确保Safari的图形界面权限正确开启:

  • 打开Safari,点击顶部菜单栏的Safari -> 偏好设置
  • 切换到高级标签页,勾选在菜单栏中显示“开发”菜单
  • 打开新出现的开发菜单,选择允许远程自动化(这是关键的一步,很多人会漏掉)
  • 如果还是不行,尝试用管理员权限执行启用命令:sudo safaridriver --enable,输入系统密码确认

2. 调整Protractor配置文件

检查你的protractor.conf.js,确保Safari相关配置正确:

方案A:直接连接SafariDriver(无需Selenium Server)

将配置改为直接连接模式,避免Selenium Server的兼容性问题:

exports.config = {
  directConnect: true,
  capabilities: {
    'browserName': 'safari',
    'safari.options': {
      'autoAcceptAlerts': true, // 根据你的测试需求可选
      'technologyPreview': false // 正式版Safari务必设为false
    }
  },
  // 其他配置项(如specs、framework等)保持不变
};

方案B:通过Selenium Server启动

如果你必须使用Selenium Server,确保配置中指定正确的驱动路径:

exports.config = {
  seleniumAddress: 'http://localhost:4444/wd/hub',
  capabilities: {
    'browserName': 'safari'
  },
  // 添加驱动路径配置
  seleniumArgs: ['-Dwebdriver.safari.driver=/usr/bin/safaridriver']
};

启动Selenium Server时,也可以直接指定驱动:
webdriver-manager start --versions.safari=11.0

3. 重置Safari的缓存与安全设置

有时候Safari的缓存或残留设置会干扰驱动启动:

  • 打开Safari的偏好设置 -> 隐私,点击移除所有网站数据,确认后重启Safari
  • 再次进入开发菜单,确认允许远程自动化仍处于勾选状态

4. 单独验证SafariDriver的可用性

先脱离Protractor,直接测试驱动是否正常工作:

  • 在终端执行:safaridriver --port=4444
  • 打开浏览器访问http://localhost:4444/wd/hub,如果能看到Selenium的控制页面,说明驱动本身没问题,问题出在Protractor配置
  • 如果启动失败,检查端口是否被占用(用lsof -i :4444查看),或者尝试用管理员权限启动:sudo safaridriver --port=4444

5. 版本兼容性微调

虽然你的版本组合理论上兼容,但可以尝试小范围升级:

  • 确保MacOS 10.13安装了最新的系统补丁,Safari 11也更新到最新版本(Safari是随系统更新的)
  • 可以尝试将Protractor升级到5.x系列的稳定版本(比如5.4.4),修复一些旧版本的Safari兼容问题:npm install protractor@5.4.4 --save-dev

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 02:30:17