Невозможно требовать ни rails_helper, ни spec_helper в консоли Rails - PullRequest
0 голосов
/ 05 января 2019

Я пытаюсь загрузить RSpec в консоль Rails. На самом деле главная причина, по которой мне это нужно, заключается в том, что я хочу запустить этот код, чтобы я мог использовать синтаксис «allow» в FactoryBot,

FactoryBot::SyntaxRunner.class_eval do
  include RSpec::Mocks::ExampleMethods
end

Итак:

  • Я открываю консоль с помощью rails c -e test
  • Сначала я пытаюсь запустить приведенный выше код напрямую и получаю сообщение об ошибке. NameError: uninitialized constant RSpec::Mocks
  • Я подумал, что сначала я должен попытаться загрузить RSpec, чтобы это заработало, поэтому я попытался запустить require './spec/spec_helper', и он кричит мне с NoMethodError: undefined method configure 'для RSpec: Module`

В качестве временного решения я просто вставляю byebug в любое случайное место спецификации, чтобы получить контекст RSpec со всем, что мне нужно, предварительно загруженным, и использую его вместо консоли rails, но действительно нет лучшего способа достичь этого?

Заранее большое спасибо за любую помощь! Постскриптум фрагмент моего Gemfile:

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
  gem 'rspec-rails', '~> 3.7.0'
  gem 'rspec-collection_matchers'
  gem 'factory_bot_rails'
end

group :test do
  # Adds support for Capybara system testing and selenium driver
  gem 'capybara', '>= 2.15', '< 4.0'
  gem 'selenium-webdriver'
  # Easy installation and use of chromedriver to run system tests with Chrome
  gem 'chromedriver-helper'
end

Полный Gemfile здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...