我在终端中运行uninitialized constant Test
时获得rails console
。我不确定为什么我只是设置它并使用rails server
命令工作。
这是我得到的错误:
/usr/lib/ruby/vendor_ruby/active_support/test_case.rb:12:in `<module:ActiveSupport>': uninitialized constant Test (NameError)
答案 0 :(得分:3)
我在Ubuntu 14.04桌面上遇到了同样的问题。解决方法如下:
sudo apt-get install ruby-test-unit
echo require 'test/unit' >> /usr/lib/ruby/vendor_ruby/active_support/test_case.rb
看到这个链接: https://bugs.launchpad.net/ubuntu/+source/ruby-activesupport-3.2/+bug/1319101
答案 1 :(得分:2)
从shoulda-matchers getting started guide复制并粘贴配置时出现此问题。但我没有删除未使用的测试框架。
要与RSpec一起使用,它将如下:
Shoulda::Matchers.configure do |config|
config.integrate do |with|
# Choose a test framework:
with.test_framework :rspec
# with.test_framework :minitest
# with.test_framework :minitest_4
# with.test_framework :test_unit
# Choose one or more libraries:
with.library :active_record
with.library :active_model
with.library :action_controller
# Or, choose the following (which implies all of the above):
with.library :rails
end
end
答案 2 :(得分:0)
上面的echo命令可能不适用于Ubuntu 14.04的所有安装。您可以执行sudo vi并物理编辑test_case.rb文件,并将require&#39; test / unit&#39;在现有的要求之后。
答案 3 :(得分:0)