【问题标题】:Can spork work with rake tasks?spork 可以处理 rake 任务吗?
【发布时间】:2011-09-30 18:36:25
【问题描述】:
Rake 任务遇到与运行测试相同的问题:Rails 启动过程需要很长时间才能运行。
有没有办法将 spork 和 rake 结合在一起?
【问题讨论】:
标签:
ruby-on-rails
ruby
rake
spork
【解决方案1】:
您可以使用 irake gem,它可以从控制台执行 rake 任务。
将此添加到 Gemfile:
gem 'irake'
然后捆绑并启动控制台
$ bundle install
$ rails console
...并等待 Rails 环境加载(仅一次)。然后你可以这样做:
rake "db:migrate"
如果你想列出任务,你可以:
Rake::Task.tasks.each{|t| puts t.name }; nil
【解决方案3】:
rake test:units
testdrb -I test/ test/unit/
rake test:functionals
testdrb -I test/ test/functional/
rake test:integration
testdrb -I test/ test/integration/
【解决方案4】:
据我所知,没有开箱即用的标准解决方案。
Rake 没有 --drb 选项,spork 在这里也无能为力。
当然,定制解决方案是可能的。这将需要延长耙式转轮。
我认为 rake 任务不像测试那样经常运行,这就是为什么问题还没有解决。