为什么 document.evaluate 在 Firebug 中成功但在 Selenium 中失败?
selenium 中的 browser.getEval 函数使 iterateNext 返回 null 。否则在 firebug 中它返回一个值(相同脚本)
document.evaluate("//button[text()='Save']",
document,
null,
XPathResult.ANY_TYPE,
null)
.iterateNext()
.disabled;
返回 true
但
browser.getEval("document.evaluate(\"//button[text()='Save']\",
document,
null,
XPathResult.ANY_TYPE,
null)
.iterateNext()
.disabled;");
返回该错误为:
“com.thoughtworks.selenium.SeleniumException:错误:引发异常:res.iterateNext() 为 null”
browser.getEval function in selenium makes iterateNext return null ..Otherwise in firebug it returns a value(same script)
document.evaluate("//button[text()='Save']",
document,
null,
XPathResult.ANY_TYPE,
null)
.iterateNext()
.disabled;
returns true
But
browser.getEval("document.evaluate(\"//button[text()='Save']\",
document,
null,
XPathResult.ANY_TYPE,
null)
.iterateNext()
.disabled;");
returns that error as :
"com.thoughtworks.selenium.SeleniumException: ERROR: Threw an exception: res.iterateNext() is null "
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试将
document.evaluate
替换为this.browserbot.getUserWindow().document.evaluate
Try replacing
document.evaluate
withthis.browserbot.getUserWindow().document.evaluate
尝试替换
为
Try replacing
with