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

Java、Selenium、IntelliJ环境下webdriver.chrome.driver路径应设在哪里?

问题描述

我用Selenium IDE自动生成代码时遇到了WebDriver问题,编译器提示必须通过webdriver.chrome.driver系统属性设置驱动程序的路径,但明明已经设置了路径,怀疑是位置不对。之前手写基础Selenium代码都正常,唯独IDE生成的代码出问题,折腾2小时没解决,求修复方法和正确的设置位置。

生成的代码片段如下:

package org.example;// Generated by Selenium IDE
import org.junit.Test;
import org.junit.Before;
import org.junit.After;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.JavascriptExecutor;
import java.util.*;
public class StorwareTestTest {
    WebDriver driver;
    Map<String, Object> vars;
    JavascriptExecutor js;
    @Before
    public void setUp () {
        driver = new ChromeDriver();
        js = (JavascriptExecutor) driver;
        vars = new HashMap<String, Object>();
    }
    @After
    public void tearDown () {
        driver.quit();
    }
    @Test
    public void storware () {
        System.setProperty("webdriver.chrome.driver", "C:/Users/wrost/Downloads/chromedriver_win32/chromedriver.exe");

        driver.get("https://storware.eu/");
    (...)
}
修复方案

问题出在系统属性设置的时机太晚:你在@Test方法里才设置webdriver.chrome.driver,但@Before方法已经提前初始化了ChromeDriver实例,这时候属性还没生效,所以报错。

正确的做法是把System.setProperty移到@Before方法里,并且要放在创建ChromeDriver实例的前面,修改后的setUp方法如下:

@Before
public void setUp () {
    // 先设置驱动路径,再初始化WebDriver
    System.setProperty("webdriver.chrome.driver", "C:/Users/wrost/Downloads/chromedriver_win32/chromedriver.exe");
    driver = new ChromeDriver();
    js = (JavascriptExecutor) driver;
    vars = new HashMap<String, Object>();
}

同时删掉@Test方法里的那行System.setProperty,避免重复设置。

额外提示:如果你的Selenium版本是4.6及以上,完全可以不用手动设置驱动路径——Selenium内置的Selenium Manager会自动下载、匹配对应版本的ChromeDriver,直接移除所有System.setProperty代码即可,更省心。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 23:27:28