Selenium2 WebDriver executeScript是否在window.onload之后运行



如果使用Selenium2 WebDriver executeScript方法,我的脚本会在window.onload之后吗?

例如,在加载了所有DOM元素/图像之后?

是的,您可以假设它将在浏览器中加载整个页面后执行

不一定。如果在get()调用后使用executeScript()方法,答案是"maybe"。WebDriver试图阻止对get()的调用,但可能有JavaScript代码在onload触发后仍将运行(考虑onload事件处理程序中的代码使用setTimeout()来推迟执行的情况),这意味着DOM仍可能被操纵。如果您在单击导致导航的链接后使用executeScript(),则执行等待页面完全加载的可能性更小,因为单击是异步的,并且不能保证WebDriver能够等待页面加载。

最新更新