2013-09-02 3 views
-1

в веб-драйвере можно переключиться с одного кадра на другой кадр на одной и той же веб-странице например, есть 2 кадра на веб-странице (frame1 и frame2) я переключимся на frame1 с помощью кодаВ веб-драйвере можно переключиться с одного кадра на другой кадр на той же веб-странице

driver.switchto().frame(id); 

и я буду выполнять операции внутри frame1

и снова, если я хочу, чтобы выполнить операцию на frame2 мне нужно переключиться обратно к окну, как

driver.switchto().defaultcontent(); 

, а затем мне нужно, чтобы перейти к frame2

или я могу сразу перейти к frame2 из Frame1

+1

Почему вы спрашиваете? Вы получаете сообщение об ошибке при переключении непосредственно из frame2 в frame1? –

+3

Сделайте некоторые исследования самостоятельно! Проверьте, работает ли это! SO помогает тем, кто помогает себе –

ответ

4

Вам нужно будет вернуться к defaultContent перед переключением на frame2 ПОКА frame2 не расположенных внутри кадра-1.

<iframe id="1"></iframe> 
<iframe id="2"></iframe> 

выше потребуется:

driver.switchTo().frame("1"); 
//doSomething in frame 1 
driver.switchTo().defaultContent(); 
driver.switchTo().frame("2"); 
//doSomething in frame 2 

Но если DOM выглядит следующим образом:

<iframe id="1"> 
    <iframe id="2"></iframe> 
</iframe> 

Тогда вы будете использовать:

driver.switchTo().frame("1"); 
driver.switchTo().frame("2"); 
//doSomething in frame 2 
driver.switchTo().defaultContent(); 
+0

почему эта строка 'driver.switchTo(). DefaultContent();' требуется (* задано из любопытства *)? Но * + 1 * для создания хорошего примера ... действительно :) –

+1

После того, как вы переключитесь на фрейм, Webdriver больше не может «видеть» , поскольку теперь он фокусируется исключительно на iframe. Чтобы вы могли получить доступ к чему-либо за пределами iframe, вам нужно переключиться на главную страницу - все, что находится за пределами iframe. Надеюсь, это поможет. –

+0

Очень полезно. Если бы я мог получить ваш адрес электронной почты ... возможно, попросить дополнительную помощь! но разрешите? :) –

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