我在让 Selenium 加载 chrome 配置文件时遇到了一些麻烦。
String pathToChrome = "driver/chromedriver.exe";
System.setProperty("webdriver.chrome.driver", pathToChrome);
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
String chromeProfile = "C:\\Users\\Tiuz\\AppData\\Local\\Google\\Chrome\\User Data\\Default";
ArrayList<String> switches = new ArrayList<String>();
switches.add("--user-data-dir=" + chromeProfile);
capabilities.setCapability("chrome.switches", switches);
WebDriver driver = new ChromeDriver(capabilities);
driver.get("http://www.google.com");
它开始很好并且工作完美,但我想加载默认配置文件,因为我想在启用一些扩展和测试一些首选项的情况下测试它。
有谁知道为什么这段代码不起作用?
我已经在 Windows 7 x64 上使用 chromedriver 26.0.1383.0 使用 Selenium 2.29.1 和 2.28.0 对其进行了测试。
原文由 Tiuz 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个老问题,但我仍然无法让它正常工作,所以我做了更多研究以了解发生了什么。 @PrashanthSams 的回答是正确的,但我错误地将
\Default
添加到配置文件路径的末尾我发现 Chrome 将 — 附加到 —
user-data-dir
\Default
中指定的配置文件路径。因此,如果您的配置文件路径指定为:user-data-dir=C:\Users\user_name\AppData\Local\Google\Chrome\User Data\Default\
它会追加
\Default
你最终会在:C:\Users\user_name\AppData\Local\Google\Chrome\User Data\Default\Default
这与您通常在该用户配置文件下打开 chrome 时获得的配置文件不同。
如果您打开命令提示符,导航到 chrome 可执行文件目录,并使用类似于以下指定的选项运行 chrome,您还可以验证您的设置:
chrome.exe --user-data-dir="C:\Users\user_name\AppData\Local\Google\Chrome\User Data"
最后,您可以转到 Chrome 中的新选项卡并浏览至
chrome://version/
您将看到正在使用的实际配置文件。它将像这样列出:配置文件路径 C:\Users\user_name\AppData\Local\Google\Chrome\User Data\Default