使用selenium下载文件

Lui*_*ixv 3 java firefox selenium selenium-webdriver

我正在使用selenium来测试系统.我必须下载一个文本文件.为了直接下载它,我创建了一个Firefox配置文件,应避免Save / cancel对话...但对话框仍在进行中.

我的代码如下:

FirefoxProfile fxProfile = new FirefoxProfile();
fxProfile.setPreference("browser.download.folderList",2);
fxProfile.setPreference("browser.download.manager.showWhenStarting",false);
fxProfile.setPreference("browser.download.dir","c:\\tmp");
fxProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
fxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/plain");
driver.findElement(By.id("link-download")).click();
Run Code Online (Sandbox Code Playgroud)

我找不到为什么对话框仍然打开.任何的想法?

提前致谢.

Lui*_*ixv 5

我知道了.

创建驱动程序时,必须将Firefox配置文件作为参数传递,如下所示:

FirefoxProfile fxProfile = new FirefoxProfile();

    fxProfile.setPreference("browser.download.folderList", 2);
    fxProfile.setPreference("browser.download.manager.showWhenStarting", false);
    fxProfile.setPreference("browser.download.dir","c:\\tmp");
    fxProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
    fxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");

    setDriver(TestBench.createDriver(new FirefoxDriver(fxProfile)));
Run Code Online (Sandbox Code Playgroud)

我在没有参数的情况下创建驱动程序.现在它正在运作.