2010-08-04 14 views
9

Quando uso il passo "Mostrami la pagina", con Capybara/Cucumber, posso controllare dove vengono esportati i file? Non riesco a trovare la configurazione per questo, e il mio google fu mi sta fallendo.Come inserire capybara in html in una cartella specifica?

In questo momento sembra che, per impostazione predefinita, raggiungano la radice della cartella delle mie cartelle e ingombrino le cose lì.

risposta

11

V'è infatti un'opzione di configurazione che consente di specificare di uscita delle file:

Capybara.save_and_open_page_path

Credo che sia stato aggiunto nella sua ultima versione (0.3.9)

Nel file env.rb si può fare qualcosa di simile:

Capybara.save_and_open_page_path = '/Users/jsboulanger/my-rails-project/tmp' 

In Capybara 2.10, Capybara::save_and_open_page= è obsoleto. Invece, chiama Capybara::save_path=

+3

Brillante! Anche se, sembrava che il percorso era relativo al mio progetto rotaie, così ho potuto semplicemente usare: Capybara.save_and_open_page_path = 'tmp' Ma ha funzionato grande - grazie! –

+0

Hai ragione, non dovresti comunque utilizzare un percorso assoluto. – jsboulanger

+0

Si consiglia di utilizzare la directory del file tmp del sistema operativo. AFAIK, non esiste un processo che pulirà questi file capybara dal progetto tmp dir delle rotaie. 'Capybara.save_path = '/ tmp'' –

7

Nizza. Grazie per questo.

Per essere veramente accurato su di esso ho aggiunto la riga di configurazione a config/environments/test.rb, poiché generalmente si utilizza Capybara in prova e questo funziona correttamente.

Dal momento che c'è un gruppo di sottocartelle in tmp/ho usato:

Capybara.save_and_open_page_path = 'tmp/capybara' 

e ha creato quella cartella.

Problemi correlati