如果quit
实例存在,我希望Selenium WebDriver
。
d = Selenium::WebDriver.for :phantomjs
=> #<Selenium::WebDriver::Driver:0x1c387eba browser=:phantomjs>
irb(main):023:0> d.quit
=> nil
irb(main):024:0> d.quit
Errno::ECONNREFUSED: No connection could be made because the target machine actively refused it. - connect(2)
如果没有检查驱动程序的存在,就会导致这样的错误。
我想写像d.quit if d.exists?
,但似乎没有这样的方法。
http://rubydoc.info/gems/selenium-webdriver/0.0.28/Selenium/WebDriver/Driver
如何安静地退出WebDriver
?
答案 0 :(得分:1)
通过关注@ Yevgeniy的建议,我已经这样写过了。
class Selenium::WebDriver::Driver
def exists?
self.window_handle
return true
rescue Errno::ECONNREFUSED
return false
end
end