読者です 読者をやめる 読者になる 読者になる

ゴンゴンのダイエット日記

日本人には米より粟

2012年1月15日(日) の日記

  • 弁当
    • 白米
    • パッペーローフ
    • 卵焼き
    • その他失念

  • フライドポテト
  • 唐揚げ
  • きゅうり

土日会社に行ってテストコード書いてた。Rails.env=testで、テストを実行する度にログイン認証に使っているDeviseによってメールが送信されてしまい非常にうざいと思っていた。テストを実行するためのコストが異常に高い状態だった。

ActionMailerでRails.env=testのときにメールを送信しない設定があることを知ったので導入してみた。/config/environments/test.rb で、

Rails::Application.configure do
  ...
  config.action_mailer.perform_deliveries = false
  ...
end

とした。これでテスト実行時にメールが送信されなくなった。

またテストに異常に時間がかかっており、Guardを導入すると待ち時間が長すぎてとても良くなかった。 /config/initializers/devise.rb に以下の設定を記述したところ、テストの実行時間が短縮された。

Devise.setup do |config|
  ...
  config.stretches = Rails.env.test? ? 1 : 10
  ...
end

ばりばりテスト書いていきたいし、BDD/TDDに移行したい。デグレ多すぎる。