Quel est le processus pour faire TDD dans Ruby avec RSpec sans Rails?
Ai-je besoin d'un Gemfile? A-t-il seulement besoin de rspec?
Ruby 1.9.3
Le processus est le suivant:
Installez la gemme rspec à partir de la console:
gem install rspec
Créez ensuite un dossier (nous le nommerons root) avec le contenu suivant:
root/my_model.rb
root/spec/my_model_spec.rb
#my_model.rb
class MyModel
def the_truth
true
end
end
#spec/my_model_spec.rb
require_relative '../my_model'
describe MyModel do
it "should be true" do
MyModel.new.the_truth.should be_true
end
end
Ensuite, dans la console, exécutez
rspec spec/my_model_spec.rb
le tour est joué!
Depuis le répertoire de vos projets ...
gem install rspec
rspec --init
puis écrivez les spécifications dans le répertoire spec créé et exécutez-les via
rspec 'path to spec' # or just rspec to run them all
Les workflows autour de gem install rspec
sont défectueux. Utilisez toujours Bundler et Gemfile pour garantir la cohérence et éviter les situations où un projet fonctionne correctement sur un ordinateur mais échoue sur un autre.
Créez votre Gemfile
:
source 'https://rubygems.org/'
gem 'rspec'
Exécutez ensuite:
gem install bundler
bundle install
bundle exec rspec --init
Ce qui précède créera .rspec
et spec/spec_helpers.rb
pour vous.
Créez maintenant votre exemple de spécification dans spec/example_spec.rb
:
describe 'ExampleSpec' do
it 'is true' do
expect(true).to be true
end
end
Et exécutez les spécifications:
% bundle exec rspec
.
Finished in 0.00325 seconds (files took 0.09777 seconds to load)
1 example, 0 failures