Как добавить тип содержимого Portable Document Format (PDF) в приложение браузера Firefox, открытое WebDriver - PullRequest
0 голосов
/ 10 мая 2018

На веб-странице, с которой я работаю, есть значок. При нажатии на этот значок открывается одно всплывающее окно, и в этом всплывающем окне отображается PDF. PDF отображается внутри iframe. Моя проблема - всякий раз, когда я запускаю свой скрипт, и веб-драйвер открывает браузер Firefox. При нажатии на значок PDF автоматически загружается, а не отображается во всплывающем окне. Ниже приведен код предпочтения браузера. Я использую.

FirefoxProfile fprofile = new FirefoxProfile();
String path = System.getProperty("user.dir");
fprofile.setPreference("browser.download.dir", "D:\\AutomationFramework\\ResultFiles");
fprofile.setPreference("browser.download.folderList", 2);
fprofile.setPreference("browser.helperApps.neverAsk.saveToDisk","application/x-excel, application/x-msexcel, application/excel, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/xls, text/csv, application/pdf, multipart/x-zip,application/zip,application/x-zip-compressed,application/x-compressed,image/jpeg,image/png,image/svg+xml");
fprofile.setPreference("browser.helperApps.neverAsk.openFile","application/xls, multipart/x-zip,application/zip,application/x-zip-compressed,application/x-compressed,image/jpeg,image/png,image/svg+xml");
fprofile.setPreference( "browser.download.manager.showWhenStarting", false );
fprofile.setPreference( "pdfjs.disabled", false );
fprofile.setPreference("plugin.scan.plid.all",false);
fprofile.setPreference("plugin.scan.Acrobat","99.0");       
fprofile.setPreference("plugin.disable_full_page_plugin_for_types","application/pdf;application/x-excel, application/x-msexcel, application/excel, application/vnd.ms-excel,application/xls, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");

Ниже приведен снимок экрана приложения браузера Firefox, открытого WebDriver. Что я должен добавить в код настройки, чтобы вместо автоматической загрузки PDF он отображался во всплывающем окне внутри iframe. Я использую Firefox версии 46.

enter image description here

1 Ответ

0 голосов
/ 11 мая 2018

Прежде всего, Selenium Webdriver по умолчанию не использует профиль firefox в firefox.exe -p. Это означает, что если экран относится к какому-либо из этих существующих профилей, он не имеет значения.

Кажется, что пропущен правильный тип пантомимы для PDF, но я использую для доступа к существующему профилю Firefox, см. Автоматическая загрузка PDF в драйвере геккона Firefox с использованием selenium Java

Вам просто нужно вручную создать профиль Firefox, изменить вручную обработку PDF-файла и в коде получить доступ к измененному профилю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...