2017-07-29 83 views
-2

,同时通过红宝石由迈克尔·哈特尔Rails的教程工作,我遇到了一个错误,而执行rails test和可以使用一些帮助让过去的这个:错误轨测试命令

$ rails test 
Running via Spring preloader in process 2648 
/usr/local/rvm/gems/ruby-2.3.4/gems/activesupport-5.0.4/lib/active_support/testing/declarative.rb:14:in `test': test_layout_links is already defined in SiteLayoutTest (RuntimeError) 
     from /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:5:in `<class:SiteLayoutTest>' 
     from /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:3:in `<top (required)>' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/activesupport-5.0.4/lib/active_support/dependencies.rb:293:in `require' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/activesupport-5.0.4/lib/active_support/dependencies.rb:293:in `block in require' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/activesupport-5.0.4/lib/active_support/dependencies.rb:259:in `load_dependency' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/activesupport-5.0.4/lib/active_support/dependencies.rb:293:in `require' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/railties-5.0.4/lib/rails/test_unit/test_requirer.rb:11:in `block in require_files' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/railties-5.0.4/lib/rails/test_unit/test_requirer.rb:10:in `each' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/railties-5.0.4/lib/rails/test_unit/test_requirer.rb:10:in `require_files' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/railties-5.0.4/lib/rails/test_unit/minitest_plugin.rb:86:in `plugin_rails_init' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/minitest-5.10.3/lib/minitest.rb:81:in `block in init_plugins' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/minitest-5.10.3/lib/minitest.rb:79:in `each' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/minitest-5.10.3/lib/minitest.rb:79:in `init_plugins' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/minitest-5.10.3/lib/minitest.rb:130:in `run' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/railties-5.0.4/lib/rails/test_unit/minitest_plugin.rb:72:in `run' 
     from /usr/local/rvm/gems/ruby-2.3.4/gems/minitest-5.10.3/lib/minitest.rb:63:in `block in autorun' 
     from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
     from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
     from -e:1:in `<main>' 
+0

做红宝石的铁轨教程由M Hartl –

+0

请给我们提供一些代码或描述你想做什么。 – Ilya

+0

欢迎来到Stack Overflow!我编辑了您的问题标题,以包含您遇到问题时的一些信息,以便更多具有该主题知识的人员能够看到它。我还将错误块缩进4个空格,以便渲染更好 - 请参阅[编辑帮助](https://stackoverflow.com/editing-help)以获取有关格式化的更多信息。我还在评论中添加了更多信息,使其更加明显。祝你好运! –

回答

0

该错误信息显示您已经在文件test/integration/site_layout_test.rb中定义了方法test_layout_links

是否有可能发生两次?

像:

def test_layout_links 
    ... 
end 

def test_layout_links 
    ... 
end 

或者,如果您使用DSL,它可能是这样的:

test "layout_links" do 
    ... 
end 

test "layout_links" do 
    ... 
end 

无论哪种方式,只要删除或重命名一个。