Ich bin neu beim Testen in Rails. Ich habe mich entschieden, Test Driven Development zu lernen, und daher erforsche ich, wie man in Schienen vorgeht.
Ich habe mit Test :: Unit angefangen und bald erfahren, dass bessere Tools und Test-Frameworks verfügbar sind. Dinge, von denen ich gehört habe, sind
Jetzt bin ich sehr verwirrt darüber, wie ich weitermachen soll. Was ist die beste Kombination dieser Tools, die ich lernen muss? Wo finde ich auch Ressourcen, um diese zu lernen?
Ich baue die App in Rails 3.0
Persönlich benutze ich Cucumber, RSpec und Factory Girl in meinen Anwendungen. Was eine Ressource betrifft, schreibe ich ein Buch namens Rails 3 in Action , das diese Tools (und natürlich auch Rails selbst) durchläuft. um eine Anwendung zu entwickeln.
Was ist der beste Weg, um eine Rails App zu testen?
Testen Sie zuerst.
Im Ernst, Sie haben eine Reihe von verschiedenen Tools aufgelistet, die verschiedene Dinge tun können.
Davon können entweder Shoulda oder Rspec die Test :: Unit ersetzen, während die anderen Werkzeuge für verschiedene Testbereiche bereitstellen. Welches du benötigst, hängt davon ab, was deiner Meinung nach das Schreiben von Tests einfacher und effektiver macht.
Für jemanden, der an Test :: Unit-Unit-Tests gewöhnt ist und daran interessiert ist, zusätzliche Tools zu lernen, würde ich Folgendes vorschlagen:
Wenn Sie ein bestehendes Projekt mit Test :: Unit verwenden, sollten Sie Mocha's Mocking und Stubbing hinzufügen und sehen, ob Sie dadurch fokussiertere Unit Tests leichter schreiben können. Wenn Sie bereits über Fixtures verfügen, sollten Sie Factory Girl zum Generieren von Factories verwenden, während Sie neue Model-Objekte hinzufügen, und sehen Sie, ob Ihre Tests einfacher zu verwalten und zu warten sind. Wenn Sie über eine Reihe fester Komponententests verfügen, sollten Sie Cucumber bereits verwenden, um funktionale Tests auf höherer Ebene zu schreiben, damit Sie in Tests Nutzergeschichten erfassen und Ihre App Ende für Schritt testen können.
Wenn Sie ein neues Projekt starten, beginnen Sie mit Rspec und Factory Girl. Rspec wird Sie in eine ganz andere Art des Testens einführen als Test :: Unit, aber Sie werden immer noch ziemlich vertraute Komponententests schreiben und es bietet Stubs, Mocks und Matcher, die Sie in Tests ohne eine Explosion von zu vielen neuen tauchen lassen Edelsteine in Ihrem Projekt. Factory Girl bietet Ihnen eine bequeme Möglichkeit zum Erstellen von Domänenobjekten, wenn Ihre Tests dies erfordern. Zwischen diesen beiden Punkten sollten Sie in der Lage sein, eine Menge neuer Testtricks zu erlernen, während Sie immer noch mit Ihrem üblichen Unit-Test-Workflow arbeiten.
Hast du das Michael Hartl's RoR 3 Tutorial überprüft?
Ruby on Rails 3 Tutorial von Michael Hartl
Er hat ein gutes Rails 3-Tutorial mit einigen grundlegenden Anwendungen von RSpec und Factory Girl integriert.
Tags und Links ruby-on-rails-3 unit-testing ruby-on-rails testing