[Ruby on Rails]バッチ処理のrbをテストする方法

2012年1月6日

バッチ処理として書いたrbファイルをテストする場合

テストケース内で

system("ruby バッチファイル")

としても良いが

たとえばTimecopで日付を固定してテストする場合には具合が良くない。

バッチのプロセスが別プロセスで動くため、Timecopの設定がバッチに反映されない。

なので

systemで呼び出している部分を

load "バッチファイル"

というように、loadに変えると、そのバッチ処理が都度ロードされるので

テストを実行しているプロセス内でバッチファイルが実行される形になる。

アンケート