capybara-webkit: guarde automáticamente una captura de pantalla en una falla de prueba de RSpec

¿Cómo puedo guardar automáticamente el html y una captura de pantalla cuando falla una prueba usando capybara-webkit con Rspec? ¿Cómo puedo ejecutar una devolución de llamada cuando falla una prueba de RSpec?

Puntos de bonificación: ¿cómo puedo evitar obtener el siguiente error:

Capybara::Driver::Webkit::WebkitInvalidResponseError 

al ejecutar este código:

require 'capybara/util/save_and_open_page'
path = "/#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}"
png = Capybara.save_and_open_page_path + "#{path}.png"
page.driver.render Rails.root.join(png)

Respuestas a la pregunta(3)

Su respuesta a la pregunta