2013-07-10 11 views
5

エラーが発生したときにRubyが提供する出力量を減らす方法はありますか?例えばスタックトレースの出力を減らすにはどうすればよいですか?

rspec bowling_spec.rb 
/Users/snowcrash/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- bowling (LoadError) 
    from /Users/snowcrash/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' 
    from /Users/snowcrash/Developer/Code/Ruby/RSpec/bowling_spec.rb:2:in `<top (required)>' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/configuration.rb:896:in `load' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/configuration.rb:896:in `block in load_spec_files' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/configuration.rb:896:in `each' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/configuration.rb:896:in `load_spec_files' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/command_line.rb:22:in `run' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/runner.rb:80:in `run' 
    from /Users/snowcrash/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.14.2/lib/rspec/core/runner.rb:17:in `block in autorun' 

私はに興味があるすべては、最初の行、cannot load such file -- bowling (LoadError)です。理想的には、Rubyがfrom行の残りの部分を吐き出さないようにしたいと思います。

これは可能ですか?

+2

...なぜですか?より多くの情報は良いです、あなたはそれを読むことを余儀なくされていません。いつかあなたが実際にスタックトレースをしたいところでエラーに遭遇するでしょう。 – meagar

+1

貴重な画面領域を占有し、実際のエラーを読むのが難しくなります。そして、私は実際にスタックトレースをしたいのですが、私はそれを呼び出すためのスイッチを実行します。 – Snowcrash

答えて

2

このような何か:あなたはUNIX/LinuxのOSにしている、とあなたは、コマンドラインからテストを実行している場合、あなたは確実にするために

rspec bowling_spec.rb | head -n 20 

を行うことができます

module Kernel 
    at_exit do 
    case $! 
    when nil, SystemExit, Interrupt 
    else puts $!.message, [email protected] 
    end 
    $stderr.reopen(IO::NULL) 
    $stdout.reopen(IO::NULL) 
    end 
end 
+1

1つの機能に対してライブラリ全体をロードするよりも優れています! – vgoff

+2

ここで多少密集しているかもしれませんが、どうすれば使用できますか? – Snowcrash

0

をエラーを表示するためにスクロールアップする必要はありません。

関連する問題