Guard:: Ошибка RSpec: не указан параметр cmd, не удалось запустить спецификации
После обновления для защиты 2.6.1 защита перестала выполнять спецификации для измененного файла
13:27:09 - INFO - LiveReload is waiting for a browser to connect.
13:27:09 - INFO - Guard::RSpec is running
13:27:09 - INFO - Guard is now watching at '[path to project]'
13:27:13 - INFO - Running: spec/models/[some_model]_spec.rb
13:27:13 - ERROR - No cmd option specified, unable to run specs!
Мой пакет
Using guard (2.6.1)
Using guard-livereload (2.3.0)
Using guard-rails (0.5.3)
Using guard-rspec (4.3.1)
Using rspec-core (2.14.8)
Using rspec-expectations (2.14.5)
Using rspec-mocks (2.14.6)
Using rspec (2.14.1)
Using rspec-rails (2.14.2)
Using rails (4.0.4)
Ответы
Ответ 1
Вам необходимо обновить Guardfile
и добавить параметр cmd
.
Guard:: RSpec 4.0 теперь использует более простой подход с новой опцией cmd
которые позволяют точно определить, какая команда rspec будет запущена на каждый бег. Эта опция требуется из-за количества различных способов можно вызвать rspec, теперь шаблон включает в себя значение по умолчанию, которое должен работать для большинства приложений, но может быть не оптимальным для всех.
Вот как выглядит мой Guardfile:
guard :rspec, cmd: "bundle exec rspec" do
# ...
end
Ответ 2
Альтернативный ответ в случае использования Zeus для ускорения выполнения теста
guard 'rspec', cmd: "zeus test" do
#
end
Перед использованием Охрана
убедитесь, что вы запустили Zeus
> zeus start