有没有办法在出错时冻结Selenium-RC执行?

时间:2010-06-28 19:07:00

标签: debugging testing internet-explorer-8 selenium selenium-rc

我的Google-fu很弱,所以我转向蜂巢......

我有一个最初在IDE中开发的Selenium脚本,我现在正尝试通过Selenium-RC在IE8上运行。我正在尝试调试未找到元素的错误。

问题是,一旦发生错误,脚本退出并且RC关闭浏览器。这使得用Firebug等进行搜索变得有点困难,看看幕后发生了什么。

在IDE中,我可以简单地设置一个断点。有没有办法在发生错误时冻结RC和浏览器的状态?

还有其他想法吗?

谢谢!

4 个答案:

答案 0 :(得分:2)

根据您运行RC测试的方式,您可以在IDE中设置断点并在调试模式下运行测试。例如,我使用Eclipse来使用Java运行测试。另一个选择是在测试中暂停一下,确保之后再次将其删除..!

答案 1 :(得分:1)

我正在运行selenium rc测试作为我的测试套件的一部分,因此我只需启动--pdb(在python中)并在发生异常时暂停脚本 - 在调用关闭浏览器的tearDown之前。

我还有一个插件,当出现问题时我会截取屏幕截图。

答案 2 :(得分:0)

如果您使用的是JUnit和SeleniumTestCase,则可以在测试代码中添加一个空的拆卸方法,这样可以通过覆盖基本的SeleniumTestCase拆除方法来阻止浏览器关闭。我在失败的测试中使用它,我需要在失败后检查生成的浏览器状态。

答案 3 :(得分:0)

在这些情况下,我在代码中注释掉了selenium.close()和selenium.stop()命令,这些命令会阻止浏览器关闭。 IIRC屏幕截图仅支持firefox,因此在您的情况下无效。