微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails-3 – 如何调试rake规范不执行测试;无限悬挂问题(导轨3)

使用rake 0.9.2,rspec,期望,模拟2.6.0,rspec-core 2.6.4,rspec-rails 2.6.1

当我执行rake rails或rspec spec path / to / spec时,我得到正常输出,直到我希望看到测试实际执行,然后没有进一步.我必须杀死进程kill-9%1来终止任务.

我的gemfile:

source 'http://rubygems.org'

gem 'rails','3.0.4'
gem 'rake','0.9.2'

# Bundle edge Rails instead:
# gem 'rails',:git => 'git://github.com/rails/rails.git'

# gem 'sqlite3-ruby',:require => 'sqlite3'
gem 'warden'
gem 'devise',"= 1.2.1"
gem 'devise_invitable'
gem 'MysqL'
gem 'will_paginate',"~> 3.0.pre2"
gem 'acts-as-taggable-on'
gem 'acts_as_list'
gem 'activemerchant'
gem 'braintree'
gem 'bartt-ssl_requirement',:require => 'ssl_requirement'
gem "paperclip"
gem 'jeditable-rails'
gem 'rdiscount'
gem "nifty-generators",:group => :development

gem "exception_notification",:git => "git://github.com/rails/exception_notification",:require => 'exception_notifier'

# Deploy with Capistrano
gem 'capistrano'
gem 'capistrano-ext'



# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
group :development,:test do
  gem 'webrat',">=0.7.2"
  gem "rspec-rails"
  gem "ZenTest"
  #gem "autotest"
  #gem "autotest-rails"
  gem "cucumber",:git => "git://github.com/cucumber/cucumber.git"
  gem "database_cleaner",:git => 'git://github.com/bmabey/database_cleaner.git'
  gem "cucumber-rails",">= 0.3.2",:git => "git://github.com/cucumber/cucumber-rails.git"
  gem 'factory_girl_rails'
  gem "capybara"
  #gem "capybara-envjs"
  gem "launchy"
  gem "spork"
  #gem "ruby-debug"
  gem "cancan"
end

shell输出

bill$rake spec
/Users/bill/.rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler.rb:197: warning: Insecure world writable dir /opt in PATH,mode 040777
/Users/bill/.rvm/rubies/ruby-1.9.2-head/bin/ruby -S bundle exec rspec ./spec/controllers/products_controller_spec.rb ./spec/controllers/roles_controller_spec.rb ./spec/controllers/users_controller_spec.rb ./spec/models/product_spec.rb ./spec/models/role_spec.rb ./spec/models/user_spec.rb
/Users/bill/.rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler.rb:197: warning: Insecure world writable dir /opt in PATH,mode 040777
/Users/bill/.rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.0/lib/bundler.rb:197: warning: Insecure world writable dir /opt in PATH,mode 040777

直到我杀了才更进一步.使用–trace运行不提供任何其他信息.我敢肯定,我必须做一些简单愚蠢的事情.这似乎是从我最近的rake版本问题开始的,因此升级到rake 0.9.2,虽然我没有任何直接相关的具体证据.感谢您提供有关如何更好地调试此问题的建议.

解决方法

呃,原来这是一个灯具文件的问题.我不使用它们,通常是工厂和存根,并且有一个规格不完整,所以看起来像rspec只是挂在那上面.我想通过缩小命令来测试不同的组,比如’rake spec:models’,哪个有效,然后’rake spec:controllers’挂了.进入生成的规格并注意到加载灯具的线条,将它们移除并瞧瞧.永远不会沉闷…

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐