0

Firefox を v 20.0 に更新しました。firefox で Selenium IDE を開くたびに、ポップアップ エラーが表示されます。

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

ファイルで報告された行は、次のような sth です。

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;
}

XMLがSelenium IDEまたはfirefoxの一部である場合、Selenium IDEに固有のことはわかりません。ただし、Firefox の最新の更新にはやるべきことがあるようです。

誰かがこの問題を解決するのを手伝ってくれれば幸いです。

4

4 に答える 4

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;
}

これに副作用があるかどうかはわかりませんが、私にとってはうまくいきます。

于 2013-04-11T10:12:00.660 に答える
1

スヴェンのアイデアは私にとって完璧に機能しました。コマンドを追加しました

var XML = {};

私のuser-extensions.jsファイルの先頭に移動し、FFとSeleniumを閉じて再起動しました。それ以来、彼らは完璧に機能しています。FF v21.0 まで問題なく使用できます。

ありがとうスヴェン!

于 2013-04-26T18:45:35.010 に答える
1

セルブロックを使用しているすべての人にこれを投稿しています。sel-blocks はアドオンであり、ユーザー拡張ではないため、上記の解決策は機能しないようです。ただし、まだ解決策があります。上記で提案した行を追加しました:

var XML = {};

代わりにこのファイルに:

xmlextras.js

このファイルは (selenium 拡張フォルダー)/chrome/content/selenium-core/scripts にあります。

Selenium 拡張フォルダーにアクセスする方法がわからない場合は、おおまかに次のようにします。

C:\Users(あなたのユーザー名)\AppData\Roaming\Mozilla\Firefox\Profiles(あなたのFirefoxプロファイル)\extensions{a6fd85ed-e919-4a43-a5af-8da18bda539f}

回答などを投稿するのに正しい形式を使用していない場合は申し訳ありませんが、探していた回答を探している人が何かを見つけられるようにしたいだけです.

于 2013-04-30T14:23:51.623 に答える