Как мне запустить мои спецификации с предыдущей версией Rspec?
-
20-08-2019 - |
Вопрос
Я следил за руководством по RSpec на одной из своих машин в надежде узнать больше о BDD и TDD.Моя настройка была с Rails 2.2.2 и Rspec 1.1.12
Сегодня вечером я решил продолжить работу на своем основном компьютере и перенес свой код с портативного на рабочий стол.Не имея RSpec, я установил gem ...
sudo gem install rspec
sudo gem install rspec-rails
Раздор и Клевета!Установлена новая версия Rspec!1.2.0!И теперь мои тесты повсеместно проваливаются!Хотя я твердо намерен продолжить работу и изучить самую последнюю версию, мне бы очень хотелось завершить то, что осталось от руководства, без необходимости начинать все сначала.Мне интересно.Есть ли способ установить и указать, что я хотел бы запустить свой код в соответствии с предыдущей Rspec, 1.2.12?
Решение
Вы можете удалить и переустановить с указанной ВЕРСИЕЙ.Объясненный здесь.
Другие советы
Если вы хотите иметь на своем компьютере более одной версии, например, если, возможно, у вас должно быть приложение 2.2 rails и приложение 2.3 rails, то в вашем файле environment.rb укажите:
config.gem, 'rspec', :lib => 'spec', :version => '1.1.12'
и ваше приложение будет использовать эту спецификацию gem и прилагаемый к ней gem rspec-rails.Это позволит вам использовать соответствующий драгоценный камень для каждого приложения.
В дополнение к указанию версий rspec и rspec-rails в моем файле environments /test.rb я добавил script/
перед spec
, например:
script/spec spec/controllers/treasury_accounts_controller.rb
чтобы обойти эту ошибку:
/opt/ror/ruby-ee-1.8.7-2011-03/lib/ruby/site_ruby/1.8/rubygems.rb:335:in `bin_path': can't find executable spec for rspec-2.1.0 (Gem::Exception)
from /opt/ror/ruby/bin/spec:19