Зависание webdriver при работе с вложенным iframe

webdriver
Теги: #<Tag:0x00007fedb88ca390>

(Igor Komarov) #1

Здравствуйте,
Столкнулся со следующей проблемой:

Есть веб - страница состоящая из 2 фреймов (Frame1, Frame2).
Один из этих фреймов (Frame2) содержит в себе еще один фрейм iframe.
Переключение на этот вложенный фрейм происходит нормально без задержек -

getWebDriver().switchTo().frame("iframeSearch")

Но при последующем обращении к элементам этого фрейма происходит минутная задержка. Что примечательно задержка происходит именно при ПЕРВОМ обращении к любому элементу этого вложенного фрейма, дальнейшая работа с элементами этого фрейма идет без задержек.

Работа с остальными фреймами (не влооженными друг в друга) происходит быстро без задержек
Вопрос - как избавиться от этой задержки?

Перепробовал следующее:
Менял версии библиотеки селениума, файрфокс драйвера, пробовал обращаться к фрейму через xpath, css, по имени фрейма.

Ничего не помогло.


(Roma Marinsky) #2

Может дело в document ready? При первом открытии страницы, какие-то данные кэшируются браузером, а при других обращениях уже используется кэш.
Может быть такое ещё, что реквест с локальной машинки отправляется на внешний сервис - а там фейлится и не присылает ответ. Поэтому браузер фф ждёт минуту пока все реквесты будут иметь статус 200

Ну скорее последний вариант у вас

Открой консоль браузера и вкладку нетворк, смотри какие запросы не получают ответы в течении минуты


(Igor Komarov) #3

спасибо. действительно, один запрос не мог достучаться к сайту. внес этот сайт в hosts файл (замкнул на локал хост) и задержки исчезли


(Roma Marinsky) #4

Отлично)
Пометь свой вопрос решённым, если мой ответ тебе помог