在Rails中,你可以忽略运行中的特定测试吗?

时间:2015-08-18 16:21:56

标签: ruby-on-rails-3 rspec

我运行了一系列测试,但是想忽略一些本地测试,因为它们需要一个不同的Java版本并且在我的环境中始终失败。我可以忽略这些测试(我们已经集成了测试)

如何指定Rails不运行某些测试但运行所有其他测试?我只是厌倦了看错误,这可能会让我错过一些合法的测试失败......

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

在RSpec中,可以使用排除过滤器,然后从命令行跳过特定测试。

在您的情况下,将描述块标记为Trimmed KAVITHI SRI KRISHNA SELVAM GOOD SERVICE FINA CARE EVENT

java: true

然后运行describe "code for JVM in production", java: true do it "java-specific test" do end end RSpec将忽略/跳过与rspec . --tag ~java:true标记匹配的测试。

注意:没有必要将其他测试设置为java: true

或者,您可以使用配置修改spec_helper.rb,以便在使用环境变量在本地运行时跳过这些测试。

java: false

CITE:

答案 1 :(得分:0)

ifunless 块中使用 describecontext 条件。

@scarver2 的回答真的很棒,我也想添加一个更轻量级的替代方案。

您还可以在 ifunless 块中使用 describecontext 条件,例如:

describe "code for JVM in production", unless: RUBY_PLATFORM.include?('darwin') do
  it "java-specific test" do
  end
end