繁体   English   中英

运行Rails控制台时未初始化的常量测试

[英]uninitialized constant Test when running Rails console

在终端中运行rails console时,我得到了uninitialized constant Test 我不确定为什么要设置它并使用命令rails server起作用。

这是我得到的错误:

/usr/lib/ruby/vendor_ruby/active_support/test_case.rb:12:in `<module:ActiveSupport>': uninitialized constant Test (NameError)

我在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

复制并粘贴来自Shoulda-matchers入门指南的配置时,我遇到了这个问题。 但是我没有删除未使用的测试框架。

要与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

上面的echo命令可能不适用于所有安装的Ubuntu 14.04。 您可以执行sudo vi并实际编辑test_case.rb文件,并将require'test / unit'放在现有的require之后。

第一:为什么不使用rvmrbenv 您可能会弄乱您的操作系统!

第二:找不到对名为Test的类的任何引用。 您确定是这个名字吗? 您有适当的要求吗? 您正在使用哪个测试框架?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM