如何在保持与浏览器的连接的同时中断Watir脚本?

时间:2016-10-24 19:38:37

标签: ruby exception watir interrupt

我有一个使用Watir webdriver的脚本。但是,它需要很长时间,我需要偶尔停止它。我希望能够通过执行一些任务来中断它并处理中断,例如注销我所在的网站。然后,它需要一种方法来恢复该过程。我正在使用ruby,到目前为止,我已尝试过抢救Interrupt => e以及Signal.trap(“TSTP”)执行| signo | {...}。在这两个中,我无法在浏览器上执行任何关闭操作,因为我似乎已经失去了与它的连接。有什么办法可以通过键盘暂停脚本并在Watir浏览器上执行一些退出操作吗?

Signal.trap("TSTP") do |signo|
    browser.link(:text=> "Logout").click
    ap "Paused. Press <enter> to continue."
    $stdin.gets
    Process.kill("STOP", Process.pid)
end

停止后给我^Z/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/net/protocol.rb:158:in `rescue in rbuf_fill': Net::ReadTimeout (Net::ReadTimeout)

0 个答案:

没有答案