Ruby on rails 水豚/rspec-有些东西是零。。。但这是什么呢?

Ruby on rails 水豚/rspec-有些东西是零。。。但这是什么呢?,ruby-on-rails,rspec,capybara,Ruby On Rails,Rspec,Capybara,浏览器中的响应[内部服务器错误]: it "should submit form", :driver => :webkit do visit '/things/new' page.should have_content('Login') fill_in 'user_login', with: @thing.email fill_in 'user_comment', with: @thing.comment click_button 'log_in

浏览器中的响应[内部服务器错误]:

  it "should submit form", :driver => :webkit do
    visit '/things/new'
    page.should have_content('Login')
    fill_in 'user_login', with: @thing.email
    fill_in 'user_comment', with: @thing.comment
    click_button 'log_in'
    save_and_open_page
    page.should have_content('Thanks!')  
  end
我猜things\u controller或things/\u表单中的某些内容出乎意料地为零,但我似乎无法确定它是什么。该页面在开发中运行良好(使用填充的数据库)

有没有办法获得更有意义的反馈


还是我走错了路?

你可以做几件事

  • 查看您的日志/test.log
  • 禁用发牢骚的nils并查看是否会弹出真正的堆栈跟踪
  • 使用一些自省,比如调试器或窥探
或锤击法:

  • 在代码中放入一大堆put/Rails.logger.debug语句

检查创建函数是否未手动设置createdf对象id,以及是否正确填写了与该对象的任何关系的字段

也就是说,编写检查这些的测试


您使用的是不同的数据库类型吗?

由于没有打印stacktrace,我假设日志中没有任何细节。我错了。谢谢我在一个没有相关条目的表上按名称查找。
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id