ruby selenium-webdriver在异常获救前退出

时间:2014-05-17 02:58:46

标签: ruby selenium

最近,我正在使用红宝石中的appium + selenium进行移动自动化。但是停止了以下问题:每次发生异常时,selenium驱动程序都会自动退出(移动应用程序已关闭)。这将导致在我设法挽救异常后,以下访问驱动程序的代码将失败 e.g。

begin
    @driver.find_element(:xpath, "//window[1]/button[27]")
rescue
    @driver.find_element(:xpath, "//window[1]/navigationBar[1]/button[2]").click
end

有没有人也有这个问题?

1 个答案:

答案 0 :(得分:0)

根据http://www.ruby-doc.org/core-2.1.1/doc/syntax/exceptions_rdoc.html"默认情况下,StandardError及其子类被拯救。您可以通过在rescue之后列出它们来拯救一组特定的异常类(及其子类):

begin
  # ...
rescue ArgumentError, NameError
  # handle ArgumentError or NameError
end

我假设你在等ElementNotVisibleException之类的东西。因此,在rescue之后添加例外类型。类似于rescue ElementNotVisibleException