保存 Selenuim Web Driver 生成的 firefox 配置文件

rdo*_*rdo 5 java selenium webdriver selenium-webdriver

我在 Firefox 中使用 Selenium WebDriver。每次selenium 都会在临时文件夹中为firefox 生成新的aniumus 配置文件,并在退出后将其删除。我需要这个个人资料。我怎么才能得到它?Fe 剖面存储在

C:\Documents and Settings\Developer\Local Settings\Temp\anonymous5583304190515426768webdriver-profile
Run Code Online (Sandbox Code Playgroud)

关闭 WebDriver 后

driver.quit();
Run Code Online (Sandbox Code Playgroud)

profile 将被删除,但它已经被记录,我想在下一次迭代中使用它,通过用它初始化 WebDriver :

FirefoxDriver driver = new FirefoxDriver(new FirefoxProfile(profileFolder));
Run Code Online (Sandbox Code Playgroud)

是否可以保存配置文件而不需要像在驱动程序工作时处理整个文件夹这样的肮脏黑客行为(我什至不确定它是否有效,因为在 Windows 中,文件夹在 Firefox 启动时被锁定)?也许 Selenium 中存在一些 API?

Pav*_*cek 3

你为什么不改变方法呢?

  • 创建一个干净的 Firefox 配置文件,并以您知道它是什么的方式命名它。例如SELENIUM
  • 初始化 Webdriver 时:

     ProfilesIni allProfiles = new ProfilesIni();
     FirefoxProfile desiredProfile = allProfiles.getProfile("SELENIUM");
     WebDriver driver = new FirefoxDriver(desiredProfile);
    
    Run Code Online (Sandbox Code Playgroud)

这样,您就可以确保在进行测试时随时使用该配置文件......

  • @rdo,您只需查找“profile.path value”即可取回该 tmp 配置文件。python 绑定示例 http://stackoverflow.com/a/33350778/2480481 (3认同)
  • 不幸的是,selenium 将输入配置文件中的数据复制到临时配置文件中,例如匿名5583304190515426768webdriver-profile,因此所有cookie都将在其中(并在测试关闭后被删除)。 (2认同)