Мне пришлось использовать сон в тесте webkit, так как он провалится каждый раз, а затем в противном случае.
Вот что я придумал после прочтения всяких постов:
if page.driver.class == Capybara::Selenium::Driver
page.driver.browser.switch_to.alert.accept
elsif page.driver.class == Capybara::Webkit::Driver
sleep 1 # prevent test from failing by waiting for popup
page.driver.browser.accept_js_confirms
else
raise "Unsupported driver"
end