我正在尝试向selenium IDE添加自定义功能。我将自定义函数添加到user-extensions.js,它们在IDE中按预期工作。出现问题的地方是导出新功能。我计划添加现有的C#/ Nunit / Webdriver格式,所以我点击添加并复制粘贴现有的cs-wd.js文件到我的新格式保存并重新启动Firefox。每当我点击我创建的新格式时,我都会收到一个JavaScript错误:“发生错误:ReferenceError:未定义等于”
Equals.prototype.toString = function() {
return this.e1.toString() + " == " + this.e2.toString();
};
有人有任何建议吗?
答案 0 :(得分:1)
好问题:D。我今天遇到了同样的问题。我开始研究Perl-rc代码格式化程序扩展,了解它们是如何做到的。在那里,我发了这条线:
पहुंचगया
这似乎将remoteControl.js加载到您自己脚本的全局Object中,使得Equals和NotEquals可用于您的脚本:有关更多信息,请参阅Mozilla's Documentation。
更新:之后你还应该添加以下行:
var subScriptLoader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"].getService(Components.interfaces.mozIJSSubScriptLoader);
subScriptLoader.loadSubScript('chrome://selenium-ide/content/formats/remoteControl.js', this);
到脚本,以避免未定义WDAPI的错误。