我在JUnit类中设置了一堆selenium测试用例作为四种方法。第一个运行正常 - 但其余三个关闭Firefox浏览器,然后方法的最后一步完成 - 给出一个
ERROR: Command execution failure. Please search the forum at http://clearspace.openqa.org for error details from the log window. The error message is: this.page().currentDocument is undefined
com.thoughtworks.selenium.SeleniumException: ERROR: Command execution failure. Please search the forum at http://clearspace.openqa.org for error details from the log window. The error message is: this.page().currentDocument is undefined
安装程序如下:
基于Ant的执行
IDE
我希望追查根本原因
它崩溃在以下一行:
这是对user-extensions.js文件的修改:
Selenium.prototype.getElementBody = function(elementId) {
return this.outerHTML(this.page().currentDocument.getElementById(elementId));
};
这就是所谓的:
commandProcessor.getString("getElementBody", "idOfElement");
答案 0 :(得分:0)
您能告诉我们您的JUnit测试类吗?
我从个人经验中了解到,有时候Selenium测试可能会因为没有明显原因而崩溃,但每次都会出现问题,因此可能与您的代码/脚本有关。
如果没有更多细节,我怕你无法帮助你。
答案 1 :(得分:0)
我从未见过一个名为getString的命令是Selenium API的一部分,所以认为这就是你的测试失败的原因。
另一件事是你告诉Selenium RC使用你用以下-userExtensions user-extensions.js
参数修改过的user-extensions.js文件吗?我从未发现在Se:RC中使用用户扩展并使用.getEval()命令是有益的。
你想要的是selenium.getEval(“this.browserbot.getUserWindow()。getElementByID(id).outerHTML”);
我已经为您清理了JavaScript。 this.browserbot.getUserWindow()
可让您访问包含该页面的Selenium JavaScript对象。
我希望有帮助