结合RSpec过滤器?

时间:2011-11-29 19:13:11

标签: ruby rspec

我一直在查看文档,但有关多个过滤器如何工作的描述似乎有点缺乏。有没有人对多个过滤器的行为有一个很好的解释或来源?他们列出的订单是否重要?这是一个代码示例,可能有其他行为以外的行为......

Rspec.configure do |c|
  this_version = get_version_number.to_sym
  c.filter_run :focus=> true
  c.filter_run_excluding :limit_to=>true, this_version => false
  c.filter_run :new_stuff=>true
  c.run_all_when_everything_filtered
end

it "is focused, but not new", :focus
it "is is new", :new_stuff
it "is new and focused", :new_stuff, :focus
it "is focused and new, but limited to a different version", :focus, :limit_to, :correct_version

试验这个,看起来像“filter_run_excluding”行简单行为的多个参数就是你多次写行。有没有办法让它实际组合过滤器检查,以便它排除(或运行,我想)只有列出两个标签的示例?

1 个答案:

答案 0 :(得分:3)

使用以下命令从命令行运行多个过滤器:

rspec spec --tag my_tag --tag my_second_tag -- tag ~my_third_tag

〜将排除带有这些标签的任何规范,因此它通常用于执行类似

的操作
rspec spec --tag ~long_runing