2010-10-06 16 views
5

Utilizamos DelayedJob para ejecutar algunos de nuestros procesos de larga ejecución y nos gustaría probar con Cucumber/Webrat.¿Cómo pruebo DelayedJob con Pepino?

Actualmente, estamos llamando retardada :: Job.work_off en un hilo Ruby a realizar su trabajo en el fondo, pero estamos buscando una solución más robusta

¿Cuál es el mejor enfoque para esto?

Gracias.

+0

la mayoría de las personas usa Delayed: Job.work_off .. ¿cuál parece ser el problema? –

+1

'Delayed :: Job.work_off' está en desuso. Use 'Delayed :: Worker.new.work_off en su lugar. – Jonathan

Respuesta

1

El principal problema que veo con el enfoque Delayed:Job.work_off es que estás haciendo explícito en tus escenarios de Cucumber algo que pertenece a las partes internas de tu sistema. Mezcla de los problemas está en contra del espíritu de pruebas funcionales:

When I click some link # Some operation is launched in the background 
And Jobs are dispatched # Delayed:Job.work_off invoked here 
Then I should see the results... 

Otro problema es que se rellenan de los escenarios de pepino con pasos repetitivos para el envío de puestos de trabajo cuando sea necesario.

El enfoque que estoy utilizando actualmente es launching delayed_job in the background while cucumber scenarios are being executed. Puedes consultar los ganchos de Pepino que estoy usando en ese enlace.

+0

la implementación de la publicación de blog adjunta inicia el trabajo demorado, pero en realidad no los ejecuta – siamii

+0

El vínculo está muerto, por eso siempre debe incluir un resumen de la solución en su respuesta. –

Cuestiones relacionadas