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

Mac运行Selenium JUnit测试(Chrome Driver)时出现SessionNotCreatedException

解决Mac上Selenium JUnit测试的SessionNotCreatedException(Chrome Driver安全授权问题)

问题重现

运行Selenium JUnit测试时抛出以下异常:

org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.

已确认Chrome Driver版本与Chrome v110匹配,系统弹出“chromedriver开发者未知”的安全警告,手动在设置中授权后无效,尝试本地绝对路径、WebDriverManager等多种驱动导入方式,修改安全设置后问题仍存在。

解决方案

1. 移除Chrome Driver的Mac隔离标记

Mac会对下载的第三方文件添加隔离属性,这是安全警告反复出现的核心原因,用终端命令移除:

xattr -d com.apple.quarantine /你的chromedriver绝对路径

如果使用WebDriverManager,默认下载路径一般为 ~/.cache/selenium/chromedriver/mac64/对应版本号/chromedriver,替换成实际路径即可。

2. 确保驱动具备可执行权限

执行以下命令给chromedriver添加执行权限:

chmod +x /你的chromedriver绝对路径

3. WebDriverManager版本锁定(若使用该工具)

避免WebDriverManager自动下载不匹配的驱动,在代码中指定精确版本:

WebDriverManager.chromedriver().driverVersion("110.0.5481.77").setup();

版本号需与Chrome浏览器的版本完全一致(查看Chrome菜单→关于Google Chrome获取精确版本)。

4. 补充Chrome启动参数(可选)

若仍存在启动问题,可添加以下参数绕过部分系统限制:

ChromeOptions options = new ChromeOptions();
options.addArguments("--no-sandbox");
options.addArguments("--disable-dev-shm-usage");
WebDriver driver = new ChromeDriver(options);

5. 重新确认系统安全授权

运行测试后,若系统设置的隐私与安全性面板弹出新的授权提示,点击“允许”,随后重启IDE或终端,确保权限生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 09:25:21