2011-09-16 24 views
6

Sto progettando un test su rotaie usando Cucumber e Rspec e mi chiedevo se fosse una buona pratica condividere il codice factory Factory Factory tra il test di accettazione di Cetriolo ei test di unità Rspec.Cucumber e Rspec condividono factory factory

E se è buona pratica dove sarebbe il posto migliore posizione neutrale per posizionare le fabbriche per rspec e cetriolo.

Grazie mille

risposta

5

È possibile utilizzare le fabbriche ovunque si desideri. Di solito li uso in rspec e nelle mie storie di Cucumber.

Le fabbriche sono sostituzioni degli apparecchi. L'idea generale è quella di essere in grado di testare correttamente e di allontanarsi dallo scenario infernale delle "fixtures".

Penso che va bene se si inserisce in specifiche/fabbriche, non esiste una posizione standard. Ma generalmente lo metto nella mia cartella spec. Non è necessario utilizzare una posizione neutra separata per questo.

+0

Grazie lascerà nella directory specifica. Mi chiedevo principalmente se avevo bisogno di un altro factory.rb – GTDev

1

Sì, è una buona pratica non ripetere le stesse definizioni di fabbrica (se sono condivise ... che mi piacerebbe contenere DOVREBBE essere una sovrapposizione). Un modo per farlo è quello di creare una nuova directory nel progetto chiamato fabbriche e quindi aggiungere il seguente le configurazioni di RSpec e cetriolo:

/features/support/app.rb 
    Dir[Rails.root.join("factories/**/*.rb")].each {|f| require f} 

/spec/spec_help.rb 
    Dir[Rails.root.join("factories/**/*.rb")].each {|f| require f}