Sto scrivendo una libreria per avvolgere le funzionalità di tsung in un modo che può essere meglio utilizzato dalle applicazioni rails. Voglio scrivere alcuni test di integrazione che si riducono a quanto segue:Avvio di un server Web all'interno di test ruby
- lancio un semplice server web
- run Tsung-registratore tramite la libreria
- lancio selenio, con un profilo di Firefox configurato per utilizzare il Tsung proxy e ha questo prendere una pagina dal server lanciato nel passaggio 1
- esaminare la biblioteca registrata (esiste, è nella posizione corretta, ecc)
Per la fase 1, mentre ho potuto lanciare un Vanil app per la rotaia esterna (ad esempio, %x{rails s}
), sono abbastanza sicuro che esiste un modo migliore per creare in modo programmatico un server Web semplice adatto per i test.
tl; dr - Qual è un modo per avviare un server Web semplice all'interno di un test?
Basta usare Rack ?. –
@NiklasB. Stavo pensando che avrebbe funzionato bene, ma non mi sto divertendo a trovare un esempio (i test in rack usano i mock da quello che posso dire). –
Hm, sfortunatamente non posso indicarvi un esempio minimo, ma sono sicuro che capybara usa questo per le sue specifiche. Dai un'occhiata all'implementazione del server su https://github.com/jnicklas/capybara/blob/master/lib/capybara/server.rb e le specifiche su https://github.com/jnicklas/capybara/blob/master /spec/server_spec.rb, sono abbastanza istruttivi :) –