Java 如何强制Selenium在WebDriver中使用永久Firefox配置文件?

Java 如何强制Selenium在WebDriver中使用永久Firefox配置文件?,java,selenium,firefox,cookies,Java,Selenium,Firefox,Cookies,我在Java中使用SeleniumWeb驱动程序API。每当我运行Web驱动程序时,它都会自动创建一个tmp Firefox配置文件,并执行与tmp配置文件相关的所有驱动程序代码 我的问题不是像这个问题中所问的那样产生额外的空间:我知道我可以调用driver.quit来清除tmp配置文件使用的资源 相反,我的问题是我想使用永久的Firefox配置文件,以便下次启动此FF配置文件时,我继承上一个配置文件的所有cookie和缓存。我知道我每次都可以手动保存和添加cookies,但这很乏味 那么,有没

我在Java中使用SeleniumWeb驱动程序API。每当我运行Web驱动程序时,它都会自动创建一个tmp Firefox配置文件,并执行与tmp配置文件相关的所有驱动程序代码

我的问题不是像这个问题中所问的那样产生额外的空间:我知道我可以调用driver.quit来清除tmp配置文件使用的资源

相反,我的问题是我想使用永久的Firefox配置文件,以便下次启动此FF配置文件时,我继承上一个配置文件的所有cookie和缓存。我知道我每次都可以手动保存和添加cookies,但这很乏味

那么,有没有办法强迫Firefox不要创建一个tmp配置文件并启动Firefox,就好像我正常使用永久配置文件浏览一样?我只想让它像普通用户一样启动


谢谢,Selenium通常不支持跨会话Cookie

最简单的方法是使用序列化。 您需要围绕selenium的cookie创建包装类,并使其可序列化。并创建类CookiesManager,其中有两个方法:SaveSession()--保存和RestoreSession()--从序列化文件还原

另一种方法是将一些cookies信息保存到一些临时cookies文件中。喜欢Csv或XML。 您可以在此处看到这种方式的示例: 但只适用于c


使用特定配置文件:

ProfilesIni profile = new ProfilesIni();

FirefoxProfile myprofile = profile.getProfile("profileToolsQA");

WebDriver driver = new FirefoxDriver(myprofile);

要为firefox创建其他配置文件,您需要通过以下方式运行firefox配置文件管理器:
firefox.exe-p

谢谢,但这并不能回答我的问题。我想知道如何强制Selenium精确地使用永久FF配置文件,以避免保存和恢复Cookie。