出于某种莫名其妙的原因,RubyMine 会自动保存您所做的每一个更改,因此每次击键都会触发 Guard 运行您的测试!最可笑的是,显然没有办法禁用这个自动保存“功能”。我只是想知道,RubyMine 似乎是 Rails 开发人员中非常流行的编辑器,而 Guard 似乎是用于自动化测试不可或缺的工具。由于 Guard 不可能与 RubyMine 合理使用,那么人们如何使用 RubyMine 处理自动化测试呢?
最佳答案
我整天都在使用 RubyMine 和 Guard,事实上,Guard 的某些部分是在 RubyMine 本身中开发的。
您可以通过访问RubyMine > Preferences
来配置自动安全行为。在菜单中输入sync
在搜索框中,然后选择 System Settings
从列表中。
图片显示了我的设置,这些效果很好。您可能还想禁用Save files on frame deactivation
,仅在手动保存时保存文件。
我更喜欢从终端使用 Guard,但您可以通过选择 Run > Edit configurations
添加运行配置来将 RubyMine 配置为直接运行 Guard从菜单:
现在您可以通过单击加号 +
添加新配置并选择IRB console
:
现在将配置命名为Guard
,在IRB脚本中输入Guard的路径并设置项目工作目录。您可能希望输入 Guard 参数作为 IRB 参数,例如不同的 Guard 组等。
我通过打开终端找到了 Guard 的路径,更改为项目工作目录并输入 which guard
,结果为 /Users/michi/.rvm/gems/ruby-1.9.3-p194/bin/guard
用于由 RVM 管理的 Ruby 1.9.3-p194 SDK。
接下来,您需要检查 Bundler
中的在 bundle 的上下文中运行脚本选项卡。
现在按OK
并且您有一个全新的运行配置。在启动 Guard 之前,您应该通过添加来将交互器配置为简单
interactor :simple
给您的Guardfile
。现在您可以直接在 RubyMine 中运行(甚至调试)Guard:
享受吧!
关于ruby-on-rails - RubyMine 不能使用 Guard 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11996124/