@ Dave Hunt, вы правы, что recordPageLoad
называется , но он просто регистрирует местоположение загрузки страницы (location.href
), если доступно, и устанавливает self.newPageLoaded = true
, значение, возвращаемое isNewPageLoaded
и, таким образом, doOpen
.
isNewPageLoaded
вызывается в selenium-api.js
_isNewPageLoaded
<= <code>makePageLoadCondition <= <code>doOpen. И doOpen
вызывается после того, как Selenium IDE запускает команду open
.
Соответствующий след:
doOpen
звонки (переход на selenium-browserbot.js
) openLocation
=> getCurrentWindow
=> _modifyWindow
=> modifySeparateTestWindowToDetectPageLoads
(который, согласно комментарию над ним, ждет "по непрерывный опрос, пока документ не изменится и не будет загружен полностью ) => pollForLoad
=> getReadyState
.
getReadyState
возвращает document.readyState
(rs
), а pollForLoad
ожидает до rs == 'complete'
, т. Е. До полной загрузки страницы, изображений и всего.
Эйс Вентура объясняет это лучше, чем я.
P.S. @ Дэйв Хант, спасибо за ваш скрипт управления потоком данных Selenium IDE на GitHub . Это пригодилось! :)