2015-05-16 8 views
4

Я использую Selenium Webdriver на Java и хочу проверить, можно ли загрузить один документ. Когда я нажимаю ссылку, ее показанное окно загрузки щенка, и мне нужно проверить текст из названия и закрыть его. Но я не могу нажать на всплывающее окно, и я не знаю, XPath и т.д. http://postimg.org/image/si2eagaqr/close загрузить popup window java

driver.close(); this statement is useless for me 

Может кто-нибудь мне посоветовать? Я буду очень благодарен.

ответ

2

Вы можете настроить Firefox непосредственно загружать файлы - File types and download actions

Если вы не хотите, чтобы жёстко настройки для вашего браузера, вы можете установить специальный профиль FF только для тестов, где вы можете настроить, где вы хотите, чтобы файлы были загружены.

FirefoxProfile firefoxProfile = new FirefoxProfile(); 

firefoxProfile.setPreference("browser.download.folderList",2); 
firefoxProfile.setPreference("browser.download.manager.showWhenStarting",false); 
firefoxProfile.setPreference("browser.download.dir","c:\\downloads"); 
firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/csv"); 
WebDriver driver = new FirefoxDriver(firefoxProfile); 

Предлагаю вам использовать первый подход намного проще.

+0

спасибо за ответ, но это как-то, как я могу проверить текст в заголовке? Otevírání nameofcodument.doc – Keliimek

+0

Вы можете проверить следующее обсуждение, я думаю, что это то, о чем вы просите - http://stackoverflow.com/questions/10590803/selenium-webdriver-for-c-sharp-popup-dialog- box –

0

Здравствуйте, вы можете использовать робот для этой цели, нажав Enter, пожалуйста, вызовите функцию внизу, чтобы нажать enter, и она будет нажимать кнопку загрузки в пользовательском интерфейсе. Если это не работает, пожалуйста, сообщите мне последовательность клавиш, чтобы выполнить это действие.

public void pressEnter() throws AWTException, InterruptedException { 
Thread.sleep(5000); 
Robot rb=new Robot(); 
rb.keyPress(KeyEvent.VK_ENTER); 
     rb.keyRelease(KeyEvent.VK_ENTER); } 
+0

Я не думаю, что это лучший способ сделать это, потому что если вы запускаете тесты на своем компьютере, если, например, фокус курсора на почтовом клиенте, он отправит электронное письмо. –

+0

будет работать, потому что, когда автоматически откроется окно с предупреждением о смене фокуса системы в поле оповещения, пожалуйста, проверьте его самостоятельно. – fahad

+0

Я не сомневаюсь, что это сработает. Я просто говорю, что есть лучший способ сделать это из-за указанных причин. –