アジャイル,Trac,オープンソースなどの話。認定スクラムマスター。Twitterは@ryuzee
一週間以上ブログへのPostが滞っていたのだが、やはり日々の仕事に追われた状況になるとinputしないので、outputできないんだよね。
ということで今日は過去のネタを書くよ。
Webアプリでメールを送信するケースは良くあるんだけど、テストは結構やりづらい。
よくある失敗パターンは下記みたいな感じ。年に数回こういうことするなーって会社でアナウンスされたりする。
で、こういう失敗って、環境の作り方で十分保護できる。僕のやっているパターンを書いておく。
Radishはフリーでソースが公開されているPOP、SMTP、DNSサーバで、http://homepage2.nifty.com/spw/software/radish/で提供されている。
SMTP設定は以下のような感じ。待ちうけるIPアドレスとアクセス許可ネットワークの設定を行う。

一般設定では「キュー常時処理」にチェックを入れてしまうと、Radishは中継したメールをそのまま外に投げてしまうので、必ずチェックを外す。

これでメールを送信すれば以下のようにRadishのキューにメールが溜まる。ダブルクリックすればそのメールの中身がメールソフトで確認できるので、自分のメールボックスにゴミがたまることもない。

とは言え、うっかりRadishでキューを全部処理してしまったりすると世間様にご迷惑をおかけするので、予めsendmail側で、開発に関係ないドメインにメールを送信しないようにしておくべきだ。
sendmailの場合は、/etc/mail/mailertableに以下のように書くと良い。
その上で、
とし、sendmail.mcで
を有効にして、sendmail.cfを作成し、sendmailを再起動すれば良い。
これによってryuzee.com宛てのメールは192.168.1.50のSMTPにリレーするが、それ以外のドメイン宛てのメールは全部捨てられる。
なお、smtp:のあとのアドレスを[]で囲んだ場合はDNSの逆引きが行われない。
ワインと将棋とインターネット 2010/01/06
[IT] Webアプリでのメール送信テストに便利なツール
[どうでもよいこと]Webアプリでのメール送信テストにはRadish使うといいよ | Ryuzee.com この方法が気に入ってます。 自分のメールボックスによけいなゴミ溜めなくて済むし。。