ruby-on-rails - Guard-Minitest + Spring 未按预期工作

标签 ruby-on-rails ruby-on-rails-4 guard minitest rails-spring

我有一个 Rails 4.0.2 项目,我使用的是guard 4.7.5、guard-minitest 2.2.0 和 spring 1.1.0。

当我的 Guardfile 读取时:

guard :minitest, spring: true do
  …
end

我在运行守卫时获取 spring 使用信息。

根据 guard 部长 README ,如果我的 Guardfile 内容如下:

guard :minitest, spring: 'rake test' do
  …
end

它运行所有默认测试(请参阅rake -T)。

事实上,当单独运行rake test时,无论我之后输入什么内容,它总是运行默认测试。运行 bundle exec rake test [whatever] 会产生相同的结果。

我错过了什么?

最佳答案

guard :minitest, spring: 'rake test' do
  …
end

适用于我的设置(即,它只运行正确的测试),尽管它没有在通知程序中显示详细的统计信息(仅通过/未通过)。

你的 do block 中有合适的观察者吗? 我基本上使用的是 Guard init 给我的东西,但我取消了 Rails 4 下观察者的注释,注释掉了其余的部分。我完整的 minitest do block :

guard :minitest, spring: 'rake test' do

   #Rails 4
   watch(%r{^app/(.+)\.rb$})                               { |m| "test/#{m[1]}_test.rb" }
   watch(%r{^app/controllers/application_controller\.rb$}) { 'test/controllers' }
   watch(%r{^app/controllers/(.+)_controller\.rb$})        { |m| "test/integration/#{m[1]}_test.rb" }
   watch(%r{^app/views/(.+)_mailer/.+})                   { |m| "test/mailers/#{m[1]}_mailer_test.rb" }
   watch(%r{^lib/(.+)\.rb$})                               { |m| "test/lib/#{m[1]}_test.rb" }
   watch(%r{^test/.+_test\.rb$})
   watch(%r{^test/test_helper\.rb$}) { 'test' }

end

我正在使用:

  • ruby 2.0.0p451(2014-02-24 修订版 45167)[x86_64-linux]
  • guard-minitest-2.2.0
  • 守卫版本2.6.0
  • Spring 版本 1.1.2
  • Rails 4.1.0
  • Minitest-5.5.5

关于ruby-on-rails - Guard-Minitest + Spring 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21452473/

相关文章:

ruby-on-rails - rails 、叉叉和防护罩 : how to run many spork servers in parallel?

ruby-on-rails - 如何遍历 CSS 类的子类?

ruby-on-rails - 未定义的方法提取数组?

ruby-on-rails - rails 4 : display clickable link in mailer view

ruby-on-rails - 属于同一模型 Rails 的模型实例

javascript - 如何处理 Angular 7 中的连接丢失页面?

ruby - Guard-process optipng 监视新图像文件夹

ruby-on-rails - rails 选择并包括

ruby-on-rails - Rails - 无法安装 RMagick 2.16.0。找不到 MagickWand.h

javascript - 尝试在 onclick 中定义一个函数