Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Ruby on Rails | ActionMailerのテストを行う

概要

ActionMailerのテストを行う

内容

ActionMailerのテストを行います。
メールは実際に送信しない設定にしている前提です。

テスト方法

test.rbで

config.action_mailer.delivery_method = :test

を設定。

RSpecの任意の箇所で下記を呼び出す

# 最後に送信されたメールを取得
mail = ActionMailer::Base.deliveries.last
# 最後に送信されたメール本文を取得
mail_body = ActionMailer::Base.deliveries.last.body

これでメールに関する情報を取得出来ますので、後はRSpecのマッチャー等を利用して
内容を検証出来ます。