Respuesta

5

No pude obtener las trazas de la pila para mostrar con Webrick o Thin, pero mi eventual solución fue utilizar Mongrel, que imprime correctamente los trazos de la pila en stderr.

Con capibara 0.4.1.2 o posterior, puede configurar capibara utilizar mestizo de este modo:

Capybara.server do |app, port| 
    require 'rack/handler/mongrel' 
    Rack::Handler::Mongrel.run(app, :Port => port) 
end 
+0

Gracias Matt! Eso hizo el truco – calstad

+1

Puede aplicar el parche de monos fino en spec_helper.rb o env.rb: https://gist.github.com/999621 –

+0

^^ Este parche ahora se ha fusionado en la última versión de Thin –

-2

esto es más probable debido a que el seguimiento de la pila sólo se muestra en el desarrollo modo de ejecución (o 'medio ambiente'), y sus pruebas de integración se ejecutan dentro del producción medio ambiente.

Por supuesto, ajustando la configuración del modo de producción, puede hacer que muestre la excepción. Pero no sería la forma correcta. La mejor manera es:

  • registro de la huella excepción y pila en un archivo o en un servidor de registro donde el usuario no puede ver, pero que puede
  • captura la excepción y render (hoptoad?) un página de error

Espero que esto ayude. Atentamente.

+2

Creo que generalmente las personas tienen sus pruebas de Capybara ejecutándose en el entorno de prueba. –

Cuestiones relacionadas