Selenium无法启动新会话求助:ChromeDriver配置异常排查
排查SessionNotCreatedException(Driver进程提前终止)问题
1. 修正ChromeDriver路径配置
- 你当前配置的路径末尾有空格,这会导致系统无法识别文件,必须删除末尾空格
- 注意:
webdriver.chrome.driver指向的是ChromeDriver可执行文件,不是浏览器文件夹。需指定到具体的chromedriver文件路径,示例:System.setProperty("webdriver.chrome.driver","/Users/imtiyaz/Documents/Google Chrome for Testing/chromedriver");
2. 确认版本严格匹配
- Chrome 115.0.5790.102必须对应同版本的ChromeDriver,检查下载的Driver版本是否和浏览器完全一致
- 验证Driver版本:打开终端执行命令
/Users/imtiyaz/Documents/Google Chrome for Testing/chromedriver --version,确认输出版本与Chrome一致
3. 赋予ChromeDriver执行权限
- 在Mac/Linux环境下,ChromeDriver默认可能没有执行权限,执行以下命令添加权限:
chmod +x /Users/imtiyaz/Documents/Google Chrome for Testing/chromedriver
4. 验证Chrome浏览器可用性
- 手动打开你指定路径下的Chrome浏览器,确认能正常启动,无闪退或报错。若浏览器本身无法正常运行,会直接导致Driver进程启动失败
5. 排除框架干扰测试
- 先写最简测试代码,排除Step Definition框架的影响,直接初始化ChromeDriver:
import org.openqa.selenium.chrome.ChromeDriver; public class TestChrome { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver","/Users/imtiyaz/Documents/Google Chrome for Testing/chromedriver"); ChromeDriver driver = new ChromeDriver(); driver.get("https://www.google.com"); driver.quit(); } }- 若该代码能正常运行,说明问题出在自动化框架的配置(如环境变量、依赖冲突);若仍报错,继续排查Driver与浏览器的适配问题
6. 检查项目依赖冲突
- 在Eclipse中检查项目依赖包,确保Selenium版本与ChromeDriver兼容(Selenium 4.10+对Chrome 115+支持更完善)
- 避免同时引入多个版本的Selenium或ChromeDriver相关依赖
内容的提问来源于stack exchange,提问作者Immy110
相关产品推荐
相关产品推荐

