NetBeans 6.9 为 RSpec 提供了一个自定义 Runner 类以集成到 IDE 中。我试图让我的 Rails 3 应用程序规范在 NetBeans 中正确显示,但 RSpec 2 似乎不再支持一般的自定义 Runner 类。
任何想法如何将规范导入IDE?
NetBeans 6.9 为 RSpec 提供了一个自定义 Runner 类以集成到 IDE 中。我试图让我的 Rails 3 应用程序规范在 NetBeans 中正确显示,但 RSpec 2 似乎不再支持一般的自定义 Runner 类。
任何想法如何将规范导入IDE?
到目前为止(NB 6.9.1)我知道从 NetBeans 内部运行 Rspec2 测试的唯一方法是使用 rake 任务。但是由于这个和其他一些问题,我无法使其与 UI Test Runner 一起工作。所以最好的方法是避免调用 UI runner,这可以通过多种方式完成:
project.properties
文件这样,您将在输出 pan 中获得测试结果,但它仍然可用,因为您可以单击堆栈跟踪上的任何位置,NB 会立即将您带到该文件:行。
剩下一件事,NB Rakefile 自动生成的任务无效(对于 Rails 项目,没有这样的问题),要使其正常工作,至少需要:
require 'rspec/core/rake_task'
Rspec::Core::RakeTask.new(:rspec)
刚刚。Oracle 刚刚宣布他们将在未来的 NetBeans 版本中取消对 Rails 的支持。是时候开始研究其他 IDE 选项了。
我知道这不是您所期望的,但您可能想检查一下 RubyMine3,它是开箱即用的,您确实需要购买许可证,但至少您可以在 30 天试用版中检查它
我正在使用 RVM。
至少我希望能够从 IDE 内部运行我的 Ruby 1.9.2 / Rails 3 / RSpec 2 规范,并能够单击 Netbeans 的堆栈跟踪以打开正确的文件和行。
我找到了一个解决方法:
在项目中的某个地方放置一个 ruby 文件,该文件可以运行规范套件。例如。我的 ruby 文件有以下内容:
system <<EOF
time ~/.rvm/wrappers/ruby-1.9.2-p290@default/rspec --drb spec
EOF
根据需要更改 ruby 版本和 gemset。
主要限制:
我不能只运行一个规范。为此,我必须将“spec”参数更改为目标规范文件(虽然这没什么大不了的)。
Netbeans 运行规范相当缓慢(在此处使用 rspec1),建议从命令行运行规范。