メインコンテンツまでスキップ

バックトレースのフィルタリング

次の設定を使用すると、テストの失敗出力のノイズを減らすために、 Railsのgemからの行をバックトレースからフィルタリングします。

RSpec.configure do |config|
config.filter_rails_from_backtrace!
end

rspecは、--backtraceコマンドラインオプションで実行された場合、 常に完全なバックトレース出力を表示します。

背景 (filter_rails_from_backtrace!の使用)

次の内容で「spec/failing_spec.rb」という名前のファイルがあるとします:

require "rails_helper"

RSpec.configure do |config|
config.filter_rails_from_backtrace!
end

RSpec.describe "Controller", type: :controller do
controller do
def index
raise "Something went wrong."
end
end

describe "GET index" do
it "raises an error" do
get :index
end
end
end

rspecコマンドの使用

rspecを実行すると

出力には「1 example, 1 failure」という文言が含まれるべきです

かつ、出力には「activesupport」という文言が含まれていないべきです。

rspec --backtraceの使用

rspec --backtraceを実行すると

出力には「1 example, 1 failure」という文言が含まれるべきです

かつ、出力には「activesupport」という文言が含まれるべきです。