Watir-webdriver - force firefox to close
我是watir-webdriver的常用用户。 一个梦幻般的宝石,但我对浏览器的问题越来越多,新的关闭。 我运行一个ubuntu机器,它处理一些后台任务,通过watir webdriver启动firefox浏览器。 当计算机已经运行了几个小时,通常处理超过100个作业,然后uncloses浏览器开始成为一个问题。 他们占用了内存,最终堵塞了计算机,迫使我重新启动。
即使我做了类似的事情,问题就出现了:
1 2 3 4 5 6 7 8 | 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
试试这个:
1 2 3 4 5 6 | begin b = Watir::Browser.new :firefox, :profile => 'default' # Goto a few pages ensure b.close end |
您可能想要研究无头解决方案,例如无头宝石或Celerity。
无头宝石仍然驱动浏览器,而不是在显示器上。 然而,Celerity包含HTMLUnit,这是一个具有良好javascript支持的虚拟浏览器。 我一直在使用Celerity来运行自动化测试,它一直很强大。 主要的警告是它只是JRuby。
另一种选择是使用更精简的浏览器,例如webkit。