如何在$(document).ready()完成后强制Selenium运行测试?

Dav*_*ith 7 javascript jquery selenium automated-tests

我们的网站在$(document).ready()函数中做了很多JavaScript/jQuery工作,设置按钮,通过ajax加载内容等等.Selenium等到DOM加载,然后继续测试.ready( )已经完成.

部分解决方案似乎是使用检查来查看浏览器是否有待处理的ajax请求:

selenium.browserbot.getCurrentWindow().jQuery.active == 0
Run Code Online (Sandbox Code Playgroud)

但是,这并不能确保我们仍然没有为按钮和事物设置绑定.

任何帮助将大大赞赏.当前的"最佳"建议是在.ready()方法的末尾向页面添加一个元素,Selenium可以将其作为开始工作的信号捕获,但是为了测试目的而添加这样的代码的想法似乎是粗略的.

Mic*_*yen 3

我相信你可以使用窗口负载检查。尝试这个:

$(window).load(function(){  
  selenium.browserbot.getCurrentWindow().jQuery.active == 0 
});  
Run Code Online (Sandbox Code Playgroud)