Estoy escribiendo una biblioteca para envolver la funcionalidad de tsung de una manera que pueda ser mejor utilizada por las aplicaciones de rieles. Quiero escribir algunas pruebas de integración que se reducen a lo siguiente:Ejecutando un servidor web dentro de las pruebas de ruby
- lanzamiento de un simple servidor web
- plazo Tsung-grabadora a través de la biblioteca
- selenio lanzamiento, con un perfil de Firefox configurado para utilizar el tsung proxy y tiene este traiga una página desde el servidor puesto en marcha en el paso 1
- examinar la biblioteca de grabado (que existe, está en el lugar correcto, etc.)
Para el paso 1, mientras que pude lanzar una vanil la aplicación lails externamente (por ejemplo, %x{rails s}
), estoy bastante seguro de que hay una mejor manera de crear un servidor web simple y adecuado para las pruebas.
tl; dr - ¿Qué es una forma de lanzar mediante programación un servidor web simple dentro de una prueba?
¿Solo usar Rack ?. –
@NiklasB. Estaba pensando que eso funcionaría bien, pero no me es fácil encontrar un ejemplo (las pruebas en rack usan burlas de lo que puedo decir). –
Hm, desafortunadamente no puedo señalarle un ejemplo mínimo, pero estoy seguro de que el capibara usa esto para sus especificaciones. Eche un vistazo a la implementación del servidor en https://github.com/jnicklas/capybara/blob/master/lib/capybara/server.rb y las especificaciones en https://github.com/jnicklas/capybara/blob/master /spec/server_spec.rb, son bastante informativos :) –