Ich führe Tests für eine Rails App mit Capybara, Cucumber und Selenium Webdriver (Ruby) durch. Ich habe eine Frage: Warum schließt Capybara den Browser nicht, wenn Net :: ReadTimeout passiert, obwohl ich einen Haken hatte, der den Browser auffordert, nach jedem Testszenario zu beenden? Wie kann ich es zwingen, den Browser zu schließen, wenn Net :: ReadTimeout auftritt? Dies ist
meine hooks.rb
Capybara schließt den Browser nicht, wenn der Net :: ReadTimeout Fehler auftritt
After do |scenario|
if scenario.failed?
page.driver.browser.save_screenshot("#{scenario.__id__}.png")
end
Capybara.current_session.driver.browser.manage.delete_all_cookies
Capybara.current_session.driver.quit
end
auch können Sie alle scheiterten Szenarien Screenshots und nennen Sie es speichern, wie Sie –
Dank möchten, aber Ich kann gescheiterte Screenshots speichern. Aber in diesem Fall, wenn Net :: ReadTimeout passiert, ist das Szenario gescheitert, ohne den Browser zu schließen. Das ist das Problem. –
James, deshalb biete ich Ihnen Capybara.screenshot gem. Ich hatte das gleiche Problem wie zuvor und entschied mich für Juwel. –