Logo: Relish

  1. Sign up
  2. Sign in

Project: RSpec Core 2.0

fail fast

Use the fail_fast option to tell RSpec to abort the run on first failure.

RSpec.configure {|c| c.fail_fast = true}

Background
Given
a file named "spec/spec_helper.rb" with:
RSpec.configure {|c| c.fail_fast = true}
Scenarios
fail_fast with no failures (runs all examples)
Given
a file named "spec/example_spec.rb" with:
describe "something" do
  it "passes" do
  end

  it "passes too" do
  end
end
When
I run "rspec spec/example_spec.rb"
Then
the output should contain "2 examples, 0 failures"
fail_fast with first example failing (only runs the one example)
Given
a file named "spec/example_spec.rb" with:
require "spec_helper"
describe "something" do
  it "fails" do
    fail
  end

  it "passes" do
  end
end
When
I run "rspec spec/example_spec.rb -fd"
Then
the output should contain "1 example, 1 failure"
fail_fast with multiple files, second example failing (only runs the first two examples)
Given
a file named "spec/example_1_spec.rb" with:
require "spec_helper"
describe "something" do
  it "passes" do
  end

  it "fails" do
    fail
  end
end

describe "something else" do
  it "fails" do
    fail
  end
end
And
a file named "spec/example_2_spec.rb" with:
require "spec_helper"
describe "something" do
  it "passes" do
  end
end

describe "something else" do
  it "fails" do
    fail
  end
end
When
I run "rspec spec"
Then
the output should contain "2 examples, 1 failure"

Last published over 2 years ago by dchelimsky.