【问题标题】:can I skip a test if another test fails?如果另一个测试失败,我可以跳过一个测试吗?
【发布时间】:2025-12-12 06:05:03
【问题描述】:

假设我有 2 个测试:

describe "Data Processor" do
  it "should parse simple sample data correctly" do
   ... 
  end 

  it "should parse complex sample data correctly" do
   ... 
  end 
end 

有没有办法使用Rspec 使第二个测试依赖于第一个?我问的原因是因为我使用的是Watchr,而第二次测试需要更多的时间。如果第一个测试失败,那么第二个测试也很可能失败。它们并不真正相互依赖,但如果第一个测试失败,运行第二个测试有点浪费时间。

我可以在Watchr 中使用Ctrl C 跳过测试,但我想知道是否有更好的方法。通过谷歌没有找到任何东西。

【问题讨论】:

    标签: ruby rspec


    【解决方案1】:

    有时我会将此行添加到我的.rspec

    --fail-fast
    

    这是一个命令行标志,告诉 rspec 在第一次失败后退出。它可能不是你想要的;它不会将两个特定示例绑定在一起,而是在任何失败时退出整个测试套件。

    但是,当我使用 autotest/guard/watchr 编写一段新代码时,我喜欢打开它,因为无论如何我一次只想处理一个故障。更快。

    【讨论】:

    • 这成功了。不完全是我想要的,但它足以满足我的需求。
    最近更新 更多