Webdriver/FXDriver utils.js在Firefox中导致'无响应的脚本'错误

问题描述:

我有一些使用Watir webdriver和FXDriver运行的浏览器测试,并且通常情况下工作正常。然而,有一个测试会加载一个包含大量HTML的灯箱,并且当测试打开这个灯箱时,Firefox会显示一个弹出窗口,抱怨FXDriver的Utils.js第432行已经成为'无响应的脚本',并且测试超时。我宁愿妥善解决这个问题比延长​​价值,所以我看着这个行...Webdriver/FXDriver utils.js在Firefox中导致'无响应的脚本'错误

goog.string.canonicalizeNewlines = function(a) { 
    return a.replace(/(\r\n|\r|\n)/g, "\n") 
}; 

但是很明显这是为什么将Firefox挂起,问题是如何阻止它。这个函数从很多地方被调用,并且因为它被Watir在firebug-less Firefox实例中调用,调试起来非常棘手。我怎样才能阻止这种情况发生?

编辑文件,延长超时时间并减少它必须处理的HTML数量是而不是选项。

+0

什么是FXDriver?谷歌没有发现任何看起来像测试工具的东西。 –

+0

我试图弄清楚为什么它被使用,但它似乎被Watir webdriver使用。 – GoatInTheMachine

+0

你的Ruby代码在这个挂起点上做什么? – jarib

启用启用Firebug的Watir-WebDriver。

首先下载Firebug的XPI文件,然后:

profile = Selenium::WebDriver::Firefox::Profile.new 
profile.add_extension "../path/to/firebug.xpi" 
b = Watir::Browser.new :firefox, :profile => profile 

见:http://watirwebdriver.com/firefox/

+0

不幸的是,带有问题的脚本(文件:/// C:/Users/xxx/AppData/Local/Temp/webdriver-profile20110927-6156-1unl25x/extensions/[email protected]/resource/modules/utils.js)在FireBug运行时不会出现在JS文件列表中,因为我猜它是通过webdriver注入的。 – GoatInTheMachine