¿Cuál es el proceso para hacer TDD en Ruby con RSpec sin Rails?¿Cómo usar RSpec sin rieles?
¿Necesito un Gemfile? ¿Necesita solo rspec?
de Ruby 1.9.3
¿Cuál es el proceso para hacer TDD en Ruby con RSpec sin Rails?¿Cómo usar RSpec sin rieles?
¿Necesito un Gemfile? ¿Necesita solo rspec?
de Ruby 1.9.3
El proceso es el siguiente:
Instalar la gema rspec desde la consola:
gem install rspec
A continuación, cree una carpeta (vamos a nombramos raíz) con el siguiente contenido:
root/my_model.rb
root/spec/my_m odel_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
Luego, en la consola de ejecución
rspec spec/my_model_spec.rb
listo!
Desde dentro de su directorio de proyectos ...
gem install rspec
rspec --init
luego escribir las especificaciones en el directorio spec creado y ejecutarlos a través de
rspec 'path to spec' # or just rspec to run them all
Los flujos de trabajo de todo gem install rspec
son erróneas. Utilice siempre Bundler y Gemfile para garantizar la coherencia y evitar situaciones en las que un proyecto funcione correctamente en una computadora pero falle en otra.
Cree su Gemfile
:
source 'https://rubygems.org/'
gem 'rspec'
luego ejecutar:
gem install bundler
bundle install
bundle exec rspec --init
El anterior creará .rspec
y spec/spec_helpers.rb
para usted.
Ahora cree sus especificaciones ejemplo, en spec/example_spec.rb
:
describe 'ExampleSpec' do
it 'is true' do
expect(true).to be true
end
end
Y ejecutar las especificaciones:
% bundle exec rspec
.
Finished in 0.00325 seconds (files took 0.09777 seconds to load)
1 example, 0 failures
Me asumir que es más o menos lo mismo que fuera, ya que no hay conexión directa entre los carriles y rspec. – Cubic
vimeo tutorial aquí: http://blog.codeship.com/install-rspec-tutorial/ – Rimian
Es un poco difícil de ver desde el título de la página y el título del video, pero esto parece ser tanto para Rails como para Proyectos de Ruby sin rieles. –