我正遭受硒对警报框described here的尴尬行为。在此问题得到解决之前,我需要从Selenium::WebDriver::Error::UnhandledAlertError
救出。
当我创建了异常发起的步骤时,这很容易做到:我在一个救援区块中运行并且工作正常。
但是,如果该步骤是我想要拯救的现有步骤,在这种情况下,检查复选框该怎么办?我不能在这个级别做任何事情 - 我可以吗? - 所以我想在场景中添加一个标签,并且像下面这样的周围钩子可以工作,但它没有:
Around('@handle_alert_boxes') do |scenario, block| do
begin
block.call
rescue Selenium::WebDriver::Error::UnhandledAlertError
puts "It's OK!"
end
end
我也试过了黄瓜的@allow-rescue
标签,但看起来这只适用于处理异常外部到黄瓜(如Rails)而不是内部(就像它驱动器 - 硒)
有没有办法处理这个问题而不用救援区创建一个新步骤?这感觉不对,它会污染我黄瓜的白话。