2010-09-09 2 views
5

Quali framework di test unitari vengono utilizzati per Rails?Quali framework di test vengono utilizzati per Rails?

Sto leggendo il libro (Pragmatic Programmers Agile Dev. With Rails) che mostra come eseguire i test unitari in Rails.

Il libro mi ha mostrato la suite di test dei binari predefinita (una sottoclasse di Test::Unit). È questo il framework di test principale che viene utilizzato nella community di Rails? Uso RSpec quando faccio regolarmente ruby ​​e mi piacerebbe poterlo usare anche in Rails (se non è un problema)?

risposta

10

Rspec è ampiamente utilizzato nelle guide e in combinazione con Cucumber, è oggi una delle soluzioni più utilizzate. nota che rails 3 sta usando rspec 2, quindi cerca rspec/rails. dai un'occhiata al libro di pragprog.com rspec e cetriolo, una grande risorsa scritta dai core team. http://pragprog.com/titles/achbd/the-rspec-book

1

Sì, rspec viene utilizzato anche per Rails. È possibile trovare alcuni altri esempi elencati here (anche se non ho provato la maggior parte di loro).

2

Direi che rspec è il più utilizzato. È facile da installare e utilizzare, è espressivo e facile da usare. Rails viene fornito con il supporto Test :: Unit per impostazione predefinita, ma non vedo molte persone che lo utilizzano. E naturalmente c'è una miriade di strutture di test più piccole che un numero limitato di persone usa. Ma è principalmente rspec.

+0

ora che i binari 3 sono fuori è importante notare che le rotaie forniscono l'agnosticismo delle imbracature di prova, consentendo di scegliere la soluzione di prova e di applicare la soluzione senza cottura. –

18

ci sono molti strumenti per guide di sperimentazione e altre webapps da molti aspetti diversi. Ma se siete nuovi ai test , vi consiglio caldamente di iniziare con il framework di test di apprendimento di Rails prima di iniziare a utilizzare altri strumenti.

L'apprendimento e la successiva padronanza di un framework di test rendono più facile in futuro comprendere i pro/contro con altri framework e farli lavorare all'unisono.

Si potrebbe iniziare con il test le seguenti cose:

  • Unit Testing tue modelle
  • test funzionali per i controller di
  • apprendimento su Fixtures e come caricare i dati di test

Ho visto molti tentativi di test falliti, ma non li ho mai visti fallire perché scelgono lo strumento/framework sbagliato. Falliscono perché non sanno come padroneggiare gli strumenti che usano e imparano abbastanza sulle basi del testing.

Maggiori informazioni sui test delle rotaie qui.
http://guides.rubyonrails.org/testing.html