Ruby on Rails 3 Tips, Ruby on Rails メモ

バッチ処理として書いたrbファイルをテストする場合 テストケース内で system("ruby バッチファイル") としても良いが たとえばTimecopで日付を固定してテストする場合には具合が良くない。 バッチのプロセスが別プロセスで動くため、Timecopの設定がバッチに反映されない。 なので systemで呼び出している部分を load "バッチファイル" というように、loadに変えると、そのバッチ処理が都度ロードされるので テストを実行しているプ ...

Ruby on Rails 3 プラグイン

日時によって表示項目を制御したりする場合に、よくDate.todayとかDateTime.nowとかを使ったりすると思うが このシステム日時を取得している場所のテストをうまく実行したい場合に役に立つプラグインが Timecop です。 ようは、Date.todayとかで返ってくる日時を固定してしまうというプラグイン。 インストールは Rails2.*系であれば、config/environments/test.rbあたりに config.gem 'timecop', :version => ...

Ruby on Rails 3 プラグイン

デファクトスタンダードな、Railsのテストツール ホームページ 公式 まだタグでv3.0.0正式対応のものがないようなので、bataを使う インストール Gemfileに を追加して 実行 rspec用タスクを生成 使い方 テスト対象のファイルをとりあえず追加 scaffoldで作成したファイルに対してrspecのファイルを作成 マイグレーション実行 テスト実行 以下のような実行結果がでるはず Startedの下にドット「.」が出るが、これは一つのテストケースを実行して正常に終了したという表示 ...

Ruby on Rails 3 プラグイン

fixtureの代替となるツール ホームページ Github インストール Gemfileに を追加して 実行 使い方 定義 specフォルダの下にfactoriesフォルダを作成 このフォルダの中にrbファイルを作成し、そこにデータのひな形を作成する #spec/factories/users.rb  ひな形を元にデータを作成 連番の付いたデータを作成 まず、factories/users.rbファイルに以下を追加 #spec/factories/users.rb  ひな形 ...