2015-05-13 6 views
-2

Рассмотрим мою ситуацию:переключение не происходит, когда я использую селен WebDriver

Там есть три веб-страницы, назовем его как A, B, C

Во-первых я запуска веб-страницы «A» с использованием селена в java

Ссылка есть в веб-странице 'A'. Когда я нажимаю эту ссылку, она перемещается в ссылку «B».

Я выполняю некоторые основные операции, а затем мне нужно закрыть это окно.

Так что Моя веб-страница «C» будет открыта, и я переключусь на нее и сделаю некоторые операции.

Я сделал это до закрытия веб-страницы «B». так что веб-страница «C» открывается. Но я не смог переключиться на него.

Для проверки кода я попытался перейти на веб-страницу «A». Это переход на веб-странице 'A' , но не переход на веб-странице 'C'

Пожалуйста Предложите решение ASAP

((JavaScriptExecutor) драйвер). executeScript ("window.close();");

Set<String> winHandleBefore =  driver.getWindowHandles(); 
For(string title:winHandleBefore){ 
Driver.switchto().window(title); 
       if(driver.gettitle().contains(winHandleBefore)){ 
driver.manage().maximize(); 

}}

Это код, который я использовал

+0

Возможно, это то, что вы делаете неправильно в коде. Можете ли вы поделиться этим? – Saifur

+0

Я ищу решение в selenium java. Я закрыл окно двумя способами. 1) Используя javaScriptExecutor 2) Используя driver.close(); Я думаю, что дескриптор окна недоступен после закрытия окна. – vignesh

+0

((JavaScriptExecutor)) .executeScript ("window.close();"); Строка winHandleBefore = driver.getWindowHandle(); for (String winHandle: driver.getWindowHandles()) { driver.switchTo(). Window (winHandle); – vignesh

ответ

-1

Почему вы закрытия окна с помощью JavaScript?

Если бы я должен был угадать из очень ограниченного примера кода, который вы указали, я бы сказал, что именно там вы ошибетесь. Закрытие окна браузера с помощью чего-либо, кроме driver.quit() или driver.close(), может привести к нестабильности.

+0

Мы также попытались с driver.close(), но результат такой же, что и переключение не произошло. Но driver.quit выключит селен, поэтому мы не сделали используйте – vignesh

+0

, закрыв браузер, не выключая вас r драйвер - ужасная идея.Я не могу представить ни одного случая использования, когда это невозможно сделать с большей стабильностью, просто вызвав driver.quit(), а затем повторно создав драйвер. – aholt

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