Подтвердить что ты не робот

Не удалось найти генератор rspec

Я пытаюсь установить RSpec в качестве драгоценного камня после его установки в качестве плагина. Я пошел дальше и пошел по указателям, найденным здесь http://github.com/dchelimsky/rspec-rails/wikis для раздела под названием rspec и rspec-rails gems, Когда я запускаю ruby script/generate rspec, я получаю сообщение об ошибке Couldn't find 'rspec' generator. Работают только плагины? Если да, то почему они даже предлагают драгоценные камни для rspec и rspec-rails? Я запускаю замороженную копию Rails 2.1.2, а версия rpsec и rspec-rails, которую я использую, является самой новой на сегодняшний день (7 ноября 2008 г.) 1.1.11.

EDIT 12 ноября 2008 г. У меня установлены как rspec, так и rspec-rails. Я распаковал драгоценные камни в папку vender/gems. Оба варианта - версия 1.1.11.

4b9b3361

Ответ 1

Так как RSpec стал средой тестирования по умолчанию в Rails, вам больше не нужно создавать спецификационные документы с помощью генераторов rspec:

Рельсы 2 Генератор RSpec

 rails generate rspec_model mymodel

Рельсы 3 Генератор RSpec

С RSpec в качестве платформы тестирования по умолчанию просто используйте собственные генераторы Rails. Это создаст все необходимые вам файлы, включая тесты RSpec. например.

  $rails generate model mymodel
      invoke  active_record
      create    db/migrate/20110531144454_create_mymodels.rb
      create    app/models/mymodel.rb
      invoke    rspec
      create    spec/models/mymodel_spec.rb

Ответ 2

Установили ли вы как rspec, так и rspec-rails?

script/generate rspec

требует установки rspec-rails gem.

Ответ 3

Для Rails 3 и rspec 2+ Вы должны убедиться, что вы включили "rspec" и rspec-rails в свой Gemfile Запустить пакет Bundle Install затем запустите рельсы g rspec: install

Ответ 4

Если вы используете рельсы 2.3, вам нужно использовать

ruby ​​ script/plugin install git://github.com/dchelimsky/rspec-rails.git -r 'refs/tags/1.3.3'

а затем

ruby ​​ script/generate rspec

Ответ 5

Должен ли быть генератор 'rspec'? Я использовал только следующее:

script/generate rspec_model mymodel
script/generate rspec_controller mycontroller

Ответ 6

У меня была эта проблема раньше, она сводилась к версии RSpec, с которой я не работал с версией Rails, которую я использовал. IIRC это был 2.1 Rails, и обновленный RSpec не был выпущен как драгоценный камень. Фактически, 1.1.11 - это драгоценный камень, который у меня есть, который будет последним доступным (игнорируя github gems), поэтому я уверен, что именно в чем была моя проблема.

Я решил использовать голову мастера rspec с любой версией Rails, в которой я оказался, он кажется мне стабильным (и не собирается нарушать работу на производстве, если только какой-то тест не сломался с false positive).

Я делаю это с помощью git с использованием подмодулей, например:

git submodule add git://github.com/dchelimsky/rspec.git vendor/plugins/rspec
git submodule add git://github.com/dchelimsky/rspec-rails.git vendor/plugins/rspec_on_rails

Ответ 7

В Fedora 9 (OLPC) я сделал:

$ sudo gem install rspec

$ sudo gem install rspec-rails 

Меня привели туда, где я мог бежать

$ ruby script/generate rspec

Это сработало для меня, тогда как инструкции git не работали.

Ответ 9

Я использую рельсы 2.3.9. Я начал пытаться использовать драгоценный камень (ы), но просто не мог заставить генератор для rspec появляться. Затем я установил плагин (ы), используя инструкции https://github.com/dchelimsky/rspec/wiki/rails, и это сделало трюк.

Ответ 10

Если вы используете bundler версии 1.0.8, вы должны $ gem update bundler перейти к более новой версии 1.0.9.

У меня были те же симптомы, и мне помог обновить упаковщик. Теперь $ rails g использует драгоценные камни, определенные в Gemfile. Также я сгруппировал свои драгоценные камни следующим образом:

source 'http://rubygems.org'

gem 'rails', '3.0.3'
gem 'sqlite3-ruby', :require => 'sqlite3'

group :test, :development do
  gem 'capybara', '0.4.1.1'
  gem 'database_cleaner'
  gem 'cucumber-rails'
  gem 'rspec-rails', '~> 2.4'
  gem 'launchy'
end

(Обратите внимание, что тестовые камни также находятся в группе :development.)

Хороший день:)

Лукаса

Ответ 11

Если вы наберете script/rails generate, единственным генератором RSpec, который вы действительно увидите, является rspec:install. Это потому, что RSpec зарегистрирован в Rails в качестве тестовой среды, поэтому всякий раз, когда вы создаете компоненты приложения, такие как модели, контроллеры и т.д., Вместо тестов Test::Unit генерируются спецификации RSpec.

Обратите внимание, что генераторы находятся там, чтобы помочь вам начать работу, но они не заменяют ваши собственные примеры, и они гарантируют, что они будут работать из коробки для сценария по умолчанию (ActiveRecord и Webrat).

https://github.com/rspec/rspec-rails

Ответ 12

Возможно, вам понадобится запустить bundle exec:

bundle exec rails g rspec:install

Ответ 13

Вам нужно будет сделать

sudo gem install cucumber-rails