1
我正在使用Selenium和JUnit進行測試。 我試圖導出報告(pdf和xls)。 使用Selenium時,我單擊下載鏈接,並執行驗證以斷言文件位於正確的文件夾中。在Firefox中自動下載pdf文件
我能夠用xls進行測試,但Firefox總是詢問我想要用PDF做什麼。
的Firefox的配置,硒是這樣的:
String downloadPath = new File("src/test/resources/firefox_download").getAbsolutePath();
firefoxProfile.setPreference("browser.download.dir", downloadPath);
firefoxProfile.setPreference("browser.download.lastDir", downloadPath);
firefoxProfile.setPreference("browser.download.manager.showWhenStarting", false);
firefoxProfile.setPreference("plugin.disable_full_page_plugin_for_types", "application/pdf,application/vnd.fdf");
firefoxProfile.setPreference("browser.download.folderList", 2);
firefoxProfile.setPreference("browser.download.defaultFolder", downloadPath);
firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf, application/vnd.fdf, application/x-msdos-program, application/x-unknown-application-octet-stream, application/vnd.ms-powerpoint, application/excel, application/vnd.ms-publisher, application/x-unknown-message-rfc822, application/vnd.ms-excel, application/msword, application/x-mspublisher, application/x-tar, application/zip, application/x-gzip,application/x-stuffit,application/vnd.ms-works, application/powerpoint, application/rtf, application/postscript, application/x-gtar, video/quicktime, video/x-msvideo, video/mpeg, audio/x-wav, audio/x-midi, audio/x-aiff"); // tipo específico
firefoxProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
我可以手動更改,在這裏:
或在這裏:
但我需要做這個程序matically,或測試將在別處失敗(如服務器/聲納)
PS:火狐19
謝謝,它的工作原理!還在browser.helperApps.neverAsk.saveToDisk中添加application/octet-stream – Falci 2013-03-08 12:01:17
如果在應用程序中無法更改文件的MIME類型,該如何處理? – ravenik 2013-04-11 10:51:09
我擔心你必須在瀏覽器(每個客戶端)和每種文件類型中進行設置:/就像問題中顯示的OP的第一次嘗試一樣(例如,對於firefox來說:'Tools> Options >應用程序>動作+在組合框中選擇「另存爲」) – A4L 2013-04-11 17:31:48