我是watir-webdriver的常客。一个神奇的宝石,但我有一个越来越多的问题与浏览器,较新的关闭。我运行一台ubuntu机器,它处理一些后台任务,通过watir webdriver启动firefox浏览器。当计算机已经运行了几个小时,通常要处理超过100个作业,然后打开浏览器就开始成为一个问题。它们占用内存,最终卡住计算机,迫使我重新启动。
即使我执行如下操作,问题仍会出现:
begin
b = Watir::Browser.new :firefox, :profile => 'default'
# Goto a few pages
b.close
rescue => e
b.close
raise e
end你知道我能做些什么来解决它吗?有没有一种方法可以确保在发生异常时强制退出进程?以及我如何调试它?
我经常看到一些超时异常,说无法绑定到锁定端口或无法获得稳定的连接。
BTW ruby 1.9.3,ubuntu 12.04 watir-webdriver 0.6.1
发布于 2012-10-04 18:17:13
试试这个:
begin
b = Watir::Browser.new :firefox, :profile => 'default'
# Goto a few pages
ensure
b.close
end发布于 2012-10-04 07:39:32
您可能希望研究无头解决方案,例如headless gem或Celerity。
无头宝石仍然驱动着浏览器,只是没有出现在显示器上。然而,Celerity包装了HTMLUnit,这是一个虚拟浏览器,有不错的javascript支持。我一直在使用Celerity运行自动化测试,它非常健壮。主要的注意事项是它只适用于JRuby。
另一种选择是使用更精简的浏览器,比如webkit。
https://stackoverflow.com/questions/12718261
复制相似问题