これに対する解決策を見つける過程で、Capybara (v1.1.2) にバグが見つかった可能性があると思います。
click
カピバラから (例外をキャプチャできません) を使用する代わりに、次のアプローチを使用してこの問題を回避することができclick
、selenium-webdriver のメソッドを使用し始めました。
Firefoxがこのアラートボックスをトリガーすると、メッセージを含む文字列が表示されるようです
このページは暗号化されていますが、入力した情報は暗号化されていない接続を介して送信されるため、第三者によって簡単に読み取られる可能性があります
の結果として返されobject.native.click
ます。それ以外の場合は文字列
わかった
返されます。
# Define the click method in ruby and call it when you're executing a 'click'
# Public: Click the object.
#
# object - Capybara::Node::Element object to click.
def click object
return_string = object.native.click
check_firefox_alertbox if return_string == "ok"
end
def check_firefox_alertbox
if @current_browser == :firefox
@session.driver.browser.switch_to.alert.accept
end
rescue Exception => e
puts e
end