【问题标题】:Growl with guard and spork fails silently on OS 10.6.6在 OS 10.6.6 上用警卫和 spork 咆哮无声地失败
【发布时间】:2011-12-26 13:48:07
【问题描述】:

当测试通过或失败时,我不会收到 Growl 通知。我已经浏览了所有我能找到的设置指南。

详情

我运行guard,它可以很好地启动Spork:

Using RSpec
Preloading Rails environment
Loading Spork.prefork block...
Spork is ready and listening on 8989!

当我更改规范文件时,一切似乎都正常:

Running: spec/unit/category_spec.rb
Running tests with args ["--color", "--format", "progress", "--format", "Guard::RSpec::Formatter::NotificationRSpec", "--out", "/dev/null", "--require", "/Users/John/.rvm/gems/ruby-1.9.2-p290/gems/guard-rspec-0.5.2/lib/guard/rspec/formatters/notification_rspec.rb", "spec/unit/category_spec.rb"]...
.

Finished in 0.2063 seconds
1 example, 0 failures
Done.

但是……Growl 没有。

我的尝试

  • 在 Growl 首选项窗格的“应用程序”选项卡中勾选了 Guard
  • 为 Snow Leopard 安装了最新的 Growl - V1.2.2
  • Growl 已启动且工作正常 - 我启用了 iTerm 并收到通知。
  • rb-fseventgrowlgrowl_notify 添加到gem 文件并运行捆绑安装
  • 从 Growl 下载页面安装了 Growl Notify 包。
  • 重新启动我的 Mac

宝石文件

group :development, :test do
  gem 'factory_girl'
  gem 'rspec-rails'
  gem "guard-rspec"
  gem "spork", "> 0.9.0.rc"
  gem "guard-spork"
  gem 'rb-fsevent'
  gem 'growl_notify'
  gem 'growl'
end

更新

我完全有机会发现,当我从保护文件中删除 --drb 选项时:

之前:

guard 'rspec', :version => 2, :cli => "--drb"  do

之后:

guard 'rspec', :version => 2, :cli => ""  do

咆哮开始工作。但是当我这样做时,测试需要很长时间才能再次运行。

咆哮有效或测试很快......但不是两者兼而有之!

【问题讨论】:

    标签: ruby-on-rails unit-testing spork guard growl


    【解决方案1】:

    最后,一分钱掉下来了,完全是意外。

    我的 Guardfile 中有以下行:

    guard 'rspec', :version => 2, :cli => "--drb" do
        ....
    end
    

    问题在于--drb 开关 - 一旦我将其移除,一切都很好:

    guard 'rspec', :version => 2, :cli => "" do
        ....
    end
    

    现在,当测试通过/失败时,Growl 会立即通知我。万岁!

    【讨论】:

    • 现在唯一的问题是测试需要很长时间才能再次运行,大概是因为 rspec 没有使用 --drb 选项运行并且没有找到 spork。这太烦人了——看起来我可以让 Growl 正常工作,或者我可以进行快速测试,但不能同时进行!
    • 您找到解决方案了吗?我有完全相同的问题 - 非常烦人!
    • 不。仍然使用它进行快速测试并且没有 Growl 通知。确实非常烦人!
    • 好吧,我终于在我的机器上修复了这个问题,但不是我想要的方式。更新到 OSX Lion 并支付了咆哮,所以我可以安装 growlnotify。第一次工作。
    【解决方案2】:

    我必须去get growl notify 让它与我的系统一起工作。还有其他可用选项,但我找不到列出它们的网站或帖子。这对我来说是最容易设置的。咆哮通知不同于咆哮。

    【讨论】:

    • 根据我的阅读,我们正在处理两个不同的事情。我正在使用咆哮 gem,但我必须安装咆哮通知软件才能工作。我的理解是咆哮通知允许 CLI 激活咆哮。不是这样吗?
    • 我已经下载并安装了 Growl Notify 包,但我已经在使用 growl_notify gem。无论哪种方式,当测试再次运行时,我仍然一无所获。一切似乎都很好,当测试失败/通过时,Growl 不会显示任何内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-12
    • 2011-09-26
    • 2014-10-19
    相关资源
    最近更新 更多