设置 `fail_fast` 选项
使用 `fail_fast` 选项告诉 RSpec 在 N 次失败后中止运行
`fail_fast` 没有失败(运行所有示例)
给定一个名为“spec/spec_helper.rb”的文件,其中包含
RSpec.configure {|c| c.fail_fast = 1}
以及一个名为“spec/example_spec.rb”的文件,其中包含
RSpec.describe "something" do
it "passes" do
end
it "passes too" do
end
end
当我运行 `rspec spec/example_spec.rb`
那么示例应该全部通过。
`fail_fast` 第一个示例失败(仅运行一个示例)
给定一个名为“spec/spec_helper.rb”的文件,其中包含
RSpec.configure {|c| c.fail_fast = 1}
以及一个名为“spec/example_spec.rb”的文件,其中包含
require "spec_helper"
RSpec.describe "something" do
it "fails" do
fail
end
it "passes" do
end
end
当我运行 `rspec spec/example_spec.rb -fd`
那么输出应包含“1 个示例,1 个失败”。
`fail_fast` 多个文件,第二个示例失败(仅运行前两个示例)
给定一个名为“spec/spec_helper.rb”的文件,其中包含
RSpec.configure {|c| c.fail_fast = 1}
以及一个名为“spec/example1spec.rb”的文件,其中包含
require "spec_helper"
RSpec.describe "something" do
it "passes" do
end
it "fails" do
fail
end
end
RSpec.describe "something else" do
it "fails" do
fail
end
end
以及一个名为“spec/example2spec.rb”的文件,其中包含
require "spec_helper"
RSpec.describe "something" do
it "passes" do
end
end
RSpec.describe "something else" do
it "fails" do
fail
end
end
当我运行 `rspec spec`
那么输出应包含“2 个示例,1 个失败”。
`fail_fast 2` 第 1 个和第 3 个示例失败(仅运行前 3 个示例)
给定一个名为“spec/spec_helper.rb”的文件,其中包含
RSpec.configure {|c| c.fail_fast = 2}
以及一个名为“spec/example_spec.rb”的文件,其中包含
require "spec_helper"
RSpec.describe "something" do
it "fails once" do
fail
end
it "passes once" do
end
it "fails twice" do
fail
end
it "passes" do
end
end
当我运行 `rspec spec/example_spec.rb -fd`
那么输出应包含“3 个示例,2 个失败”。