2014-12-23 3 views
0

Итак, конечно, в Internet explorer (9) Я не могу получить ссылку для открытия на вкладке фона. Я попробовал несколько вещей:Невозможно открыть ссылку в качестве вкладки фона - Java, Selenium, IE

Robot r = new Robot(); 
r.keyPress(KeyEvent.VK_CONTROL); 
driver.findElement(By.name(THE_LINK)).click(); 
r.keyRelease(KeyEvent.VK_CONTROL); 

Я также пытался

String link = Keys.chord(Keys.CONTROL, Keys.RETURN); 
driver.findElement(By.name(THE_LINK)).sendKeys(link); 

Это на самом деле открывает его в новом окне.

Когда я работаю вручную, а ctrl + click работает как ожидалось и открывается на вкладке фона. Я попытался сбросить настройки браузера и сделать много разных вещей, но, конечно, он работает не так, как ожидалось.

Кто-нибудь видел это раньше? У кого-то другое дело для меня?

ответ

1

Нет причин для этого.

Если вы нажмете на ссылку, просто переключиться обратно в исходный контекст с помощью:

driver.switchTo().defaultContent(); 

, чтобы вернуться на вкладку вы находились.

Если это не сработает, то, возможно, придется сделать

driver.switchTo().window(driver.getWindowHandles()[0]); // i'm not at my programming computer so i can't remember the actual syntax ;) 
+0

протектор легко. объясните, что это функциональность для браузера. если вы не тестируете браузер, нет причин для этого. Selenium проверяет веб-приложение. а не браузер ';)' – sircapsalot

+0

, также важно знать, что Селен не знает (и не заботится) о различии между окнами и вкладками. – sircapsalot

+0

Проблема в том, что браузер корректно работает вручную. Почему это изменится, потому что я использую селен? Класс робота работает так же, как и вручную, нет? – user2879041

Смежные вопросы