Wie teste ich den CSV-Dateidownload in Capybara und RSpec?

Das Folgende befindet sich im Controller:

respond_to do |format|
  format.csv  { send_data as_csv, type:'text/csv' }
end

In spec:

click_link 'Download CSV'
page.driver.browser.switch_to.alert.accept

expect( page ).to have_content csv_data

Aber das funktioniert nicht:

Failure/Error: page.driver.browser.switch_to.alert.accept
Selenium::WebDriver::Error::NoAlertPresentError: No alert is present

Ich sehe das Dialogfeld "Datei speichern", aber anscheinend handelt es sich nicht um ein "Alarm" -Dialogfeld.

Wie kann ich auf OK klicken und Capybara auffordern, die Daten anzuzeigen?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage