7

我已经安装了guard-rspec gem 以在我的rails 应用程序中使用。当我通过命令行从命令行启动警卫时bundle exec guard,它第一次运行我的整个测试套件没有问题。

但是,每当我对我的 Guardfile 中指定的规范文件或任何监视文件进行任何更改时,Guard 似乎都无法识别这些更改,并且不会重新运行任何测试。

我什至尝试在我的 Guardfile 中添加一些明确的内容,如下所示:

watch("app/views/orders/new.html.erb")          { "spec/requests/orders_spec.rb" }

当我编辑和保存正确时,哪个应该触发我的orders_spec.rb测试运行?new.html.erb好吧,当我编辑它并点击保存时,什么也没有发生,甚至没有错误或警告。

有没有人在 Windows 上运行 Guard 或遇到过类似的问题?

4

2 回答 2

9

我不是 Windows 用户,这不是我个人的经验,但作为 Guard 维护者,我经常听说fchange gem 有问题。您可以强制 Guard 轮询更改,从而跳过 fchange:

bundle exec guard -p

Maher Sallam 已经解决了这个问题并创建了wdm,这似乎更可靠。还有一个将其集成到 Guard 的拉取请求。我建议您测试集成并给 Maher 一些来自真实世界 Windows 用户的反馈,因为 Maher 是 Linux 专家:P

于 2012-08-02T08:42:32.783 回答
1

我有这个问题(但在 Mac 上)。我有一个服务类的规范,当我保存规范时,测试会在警戒中运行,但是当我保存服务类时,相应的规范没有运行。只有这个类受到影响。原来我的规范文件名中有错字,并且与类文件名的名称不匹配。如果您的规范未在保存时运行,请确保您的文件名正确。

于 2019-08-27T13:21:01.063 回答