2011-09-27 39 views
0

我有一些使用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

回答

2

啓用啓用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