2013-04-04 72 views
0

我剛將Firefox更新至v 20.0。每當我在Firefox中打開Selenium IDE時,它都會顯示一個彈出錯誤。使用Firefox的Selenium IDE datadrivenv0.2問題20.0

Failed to load user-extensions.js file=[PATH to file ...]datadriven_v0.2/datadriven.js lineNumber=37 error=ReferenceError:XML is not defined

文件中報告的行是某事像這樣:

XML.serialize = function(node) { 
    if (typeof XMLSerializer != "undefined") 
     return (new XMLSerializer()).serializeToString(node) ; 
    else if (node.xml) return node.xml; 
    else throw "XML.serialize is not supported or can't serialize " + node; 
} 

我不知道具體的硒IDE任何事情,如果XML是硒的IDE或Firefox瀏覽器的一部分。但是,它似乎是Firefox的最新更新有做。

我會很感激,如果有人幫我解決這個問題。

回答

3

可以通過聲明中datadriven.js的XML-對象解決這個問題之前,它被稱爲。

var XML = {}; 
XML.serialize = function(node) { 
    if (typeof XMLSerializer != "undefined") 
     return (new XMLSerializer()).serializeToString(node) ; 
    else if (node.xml) return node.xml; 
    else throw "XML.serialize is not supported or can't serialize " + node; 
} 

我不知道這是否有任何副作用,但對我來說它的工作原理。

+0

謝謝@Sven,我會嘗試 – sakhunzai 2013-04-11 12:11:36

+0

是的,這是適用於較新版本Firefox的適用解決方法,該版本已刪除XML對象。此外,較新版本的SelBlocks不再依賴於XML對象。 – 2013-11-29 02:44:28

1

斯文的想法對我來說非常合適。我添加了命令

var XML = {};

到我的user-extensions.js文件的開頭,關閉FF和Selenium,並重新啓動它們。從那時起他們一直在努力工作。我達到FF v21.0沒有問題。

謝謝Sven!

1

我發佈這個任何人使用sel塊;上述解決方案似乎不起作用,因爲sel-blocks是附加組件,而不是用戶擴展組件。但是,仍然有一個解決方案。我添加了上面建議的行:

var XML = {};

這個文件,而不是:

xmlextras.js

此文件可在(硒擴展文件夾)/鉻/內容/硒核心/腳本

發現如果你不確定如何到達您的硒擴展文件夾,大致如下:

C:\ Users(您的用戶名)\ AppData \ Roaming \ Mozilla \ Firefox \ Profiles(您的Firefox檔案)\ extensions {a6fd85ed-e919-4a43 -a5af-8da18bda539f}

如果我沒有使用正確的格式發佈答案或任何內容,我表示歉意,但我只是想確保任何人尋找我正在尋找的答案是能夠找到的東西。