Spork は drb プロトコルを用いて主にテストを走らせるときなどに、Ruby のオブジェクトをあらかじめメモリ上にロードさせておいてテストなどの実行を速めようというライブラリ。
これを RSpec で利用するためには drb サーバを見るよう設定する必要がある。
たいてい rspec
ではなく rake
なり guard
なりを使って間接的に spec を実行するだろうから、.rspec
やあるいは spec_helper.rb
のようなファイルに用いるオプションをまとめて書いておくことが多い。
単に --drb
オプションを設定していると、drb server に接続先できなかったときにその旨が標準エラー出力に出力される。
冗長なエラーメッセージは正しく抑制しなければならないので、Spork を使えないとき・使わないときには --drb
オプションをつけずに実行するとよさそう。
spec_helper.rb
RSpec.configure do |config|
if defined?(Spork) && Spork.using_spork?
config.drb = true
# config.drb_port = 12345
end
end