【问题标题】:Skipping specific rspec tests in guard在警卫中跳过特定的 rspec 测试
【发布时间】:2012-09-25 11:28:58
【问题描述】:
我正试图让守卫跳过一些测试(那些需要硒才能运行的测试)。
我已经为它们添加了 browser_required 标记,并使用“--tag ~browser_required”运行 rspec 将它们过滤掉。
但是我无法让守卫不运行它们,我在守卫文件中设置了 :cli => "--tag ~browser_required"。这是我的完整保护文件http://pastebin.com/pGuWAQm8
【问题讨论】:
标签:
ruby-on-rails
rspec
guard
【解决方案1】:
在您的要点中,它确实有两个 rspec 块(一个带有 cli,另一个没有)。也许删除第二个至少会让这个工作正常。
【解决方案3】:
cli 选项在 Rspec 3 中已弃用。请改用cmd。
例如:
guard :rspec, cmd: "bundle exec rspec --color --tag ~speed:slow", failed_mode: :focus do
require "guard/rspec/dsl"
dsl = Guard::RSpec::Dsl.new(self)
# RSpec files
rspec = dsl.rspec
watch(rspec.spec_helper) { rspec.spec_dir }
watch(rspec.spec_support) { rspec.spec_dir }
watch(rspec.spec_files)
watch(%r{\Aapp/(.+)\.rb\z}) { |m| "spec/#{m[1]}_spec.rb" }
end
阅读更多关于 Rspec 标签here