Selenium 2 Firefox配置文件更改位置

时间:2013-02-27 23:41:40

标签: selenium selenium-webdriver selenium-grid selenium-firefoxdriver remotewebdriver

现在已经有好几个星期了,我一直在四处看看,我没有看到任何关于改变Firefox配置文件保存位置的问题。

我正在使用特定的Firefox配置文件,但是,当测试运行时会在/ tmp /中创建会话。我希望会话在不同的位置启动,并将其使用的文件保存在以下位置:/ var / tmp /。有没有办法做到这一点?

注意:这不是我在哪里让RemoteWebDriver使用特定的Firefox配置文件的问题。

编辑:我使用的是Selenium 2.28和Firefox 15.0.1

2 个答案:

答案 0 :(得分:3)

查看FirefoxProfile:442

File profileDir = TemporaryFilesystem.getDefaultTmpFS()
          .createTempDir("anonymous", "webdriver-profile");
copyModel(model, profileDir);

TemporaryFilesystem需要it's location from "java.io.tmpdir":,它通常指向系统的临时目录。 Santoshsarma的解决方案因为这一行而有效(但它也会移动你的OS临时目录)。

private static File sysTemp = new File(System.getProperty("java.io.tmpdir"));

我们可以做得更多!查看public方法setTemporaryDirectory

您可以在实例化FirefoxDriver之前调用此方法,并且应该在您指定的位置创建它的配置文件副本。

答案 1 :(得分:0)

Firefox使用操作系统临时文件位置存储临时文件

如果要将其他位置用于临时文件,则需要在控制面板中更改Windows中临时文件的位置。

您可以更改%TEMP%和%TMP%环境变量,并使它们指向您要使用的临时文件夹。

Control Panel > System > Advanced > Environment variables

参考:Firefox Support