Selenium Firefox首选项已更改但未应用

时间:2018-05-18 12:36:10

标签: c# selenium geckodriver

我正在使用Selenium和Firefox进行自动化测试,我需要自动下载文件。以下是我用来设置代码的两个链接。

Auto download PDF in Firefox

Set Firefox profile to download files automatically using Selenium and Java

总结文章,代码应如下所示:

FirefoxOptions options = new FirefoxOptions();
options.setPreference("browser.download.folderList", 2);
options.setPreference("browser.download.dir", "C:\\Windows\\temp");
options.setPreference("browser.download.useDownloadDir", true);
options.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf");
options.setPreference("pdfjs.disabled", true);  // disable the built-in PDF viewer

WebDriver driver = new FirefoxDriver(options);

当我运行测试时,自动下载失败。我检查了about:config,设置已按照代码的意图进行了更改。 (about:config screenshot)

此外,在该驱动程序实例中,如果我更改任何设置然后重新应用相同的设置,则自动下载有效。是否存在我缺少的webdriver的设置或步骤,然后应用新设置?

以下是我测试过的Selenium,Firefox和GeckoDriver版本:

Selenium:v3.12.0

Firefox:59.0.3,60.0.1

GeckoDriver:v0.19.0-win64,v0.20.0-win64,v0.21.0-win64

1 个答案:

答案 0 :(得分:0)

据我所知,使用selenium下载文件非常困难,因为浏览器会打开一些无法通过javascript控制的对话框。 Watch this link,我希望有用