Я использую Rails 4.1 и Ruby 2.0.0. Я пытаюсь настроить тестирование с помощью minitest-rails
, и я столкнулся с этой странной ошибкой. Когда я включаю:NameError: неинициализированная константа Minitest :: VERSION
require 'minitest/spec'
В моем 'spec_helper' файл, он дает мне NameError: UNINITIALIZED постоянную ошибку Minitest :: VERSION. Когда я прокомментирую эту строку, все работает нормально. Странно, что «minitest/autorun» также присутствует и не вызывает никаких проблем. Возможно, вы, ребята, можете пролить свет на то, что здесь происходит.
spec_helper.rb
:
ENV["RAILS_ENV"] ||= "test"
require File.expand_path('../../config/environment', __FILE__)
require 'minitest/spec'
require 'minitest/autorun'
require 'minitest-rails'
require 'minitest-rails-capybara'
Rakefile
:
require File.expand_path('../config/application', __FILE__)
Pinteresting::Application.load_tasks
namespace :test do
task :run do
ENV["RACK_ENV"] = "test"
$LOAD_PATH.unshift("lib", "spec")
if ARGV[1]
require_relative ARGV[1]
else
Dir.glob("./spec/**/*_spec.rb").each { |file| require file }
end
end
end
.spec
:
require "spec_helper"
describe "Test" do
describe "When two is equal to two" do
it "asserts true" do
assert_equal(2, 2)
end
end
end
Стек след:
nbp-93-202:pinteresting Frank$ rake test:run
rake aborted!
NameError: uninitialized constant Minitest::VERSION
/usr/local/rvm/gems/ruby-2.0.0-p481/gems/minitest-5.3.4/lib/minitest/unit.rb:22:in `<class:Unit>'
/usr/local/rvm/gems/ruby-2.0.0-p481/gems/minitest-5.3.4/lib/minitest/unit.rb:21:in `<module:Minitest>'
/usr/local/rvm/gems/ruby-2.0.0-p481/gems/minitest-5.3.4/lib/minitest/unit.rb:20:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.0.0-p481/gems/minitest-5.3.4/lib/minitest/spec.rb:1:in `<top (required)>'
/Users/Frank/Desktop/pinteresting/spec/spec_helper.rb:4:in `<top (required)>'
/Users/Frank/Desktop/pinteresting/spec/diagnostic_spec.rb:1:in `<top (required)>'
/Users/Frank/Desktop/pinteresting/Rakefile:12:in `block (3 levels) in <top (required)>'
/Users/Frank/Desktop/pinteresting/Rakefile:12:in `each'
/Users/Frank/Desktop/pinteresting/Rakefile:12:in `block (2 levels) in <top (required)>'
Tasks: TOP => test:run
Вы видите эту ошибку при запуске 'bundle install'? Включение трассировки стека поможет –
Я добавил трассировку стека – Idyllize
Возникает ли ошибка, если вы изменили порядок в запросе, то есть сначала требуется «minitest/autorun», а затем «minitest/spec»? – eduardo