如何让rspec-2提供与测试失败相关的完整跟踪?

mar*_*cgg 95 ruby testing rspec rspec2 ruby-on-rails-3

现在,如果我使用我的测试套件rake spec我得到一个错误:

1) SegmentsController GET 'index' should work
   Failure/Error: get 'index'
   undefined method `locale' for #
   # ./spec/controllers/segments_controller_spec.rb:14:
      in `block (3 levels) in '

这是正常的,因为我有一个错误:)

问题是跟踪不是很有帮助.我知道它突破了segments_controller_spec.rb,第14行,但这只是我称之为测试的地方:

### segments_controller_spec.rb:14
get 'index'
Run Code Online (Sandbox Code Playgroud)

我更喜欢实际的断行和完整的跟踪,而不是spec文件夹中的部分.

跑步--trace并没有帮助.

sol*_*nic 243

您必须使用-b选项运行rspec 才能看到完整的回溯

  • 我没有得到它,这个或接受的答案都没有给你从spec文件中进一步回溯.或者它不仅对我而言o_O (8认同)

nat*_*vda 29

另一种(更简单的)替代方法是编辑.rspec文件,然后添加backtrace选项.它应该看起来像这样:

--colour
--backtrace
Run Code Online (Sandbox Code Playgroud)

这将给你完整的回溯.希望这可以帮助.

  • 适合你来自美国.在英国,他们写的是颜色,而rspec的人们非常友好地允许两者;) (2认同)
  • 这是引擎盖上的扳手! (2认同)

小智 6

这也将起作用:

# rails_helper.rb
RSpec.configure do |config|
  config.full_backtrace = true
end
Run Code Online (Sandbox Code Playgroud)