Local SMTP server that can be used for testing and development - won't actually deliver mail

SqlRyan picture SqlRyan · Nov 14, 2010 · Viewed 69.5k times · Source

When I'm developing something that sends email, I sometimes don't want to actually send any email, but I do want to see what email would be sent using live data. However, there's not an easy way to do this, as I haven't found a local SMTP server that will receive my mail and then just hold it for me in a queue so I can view it.

In Windows XP and Vista, I used the locally installed SMTP server and just set it to deliver to a smart host that didn't exist - the mail just sat in the "inetput\mailroot\queue" folder forever, and I could view it whenever I wanted to. However, in Windows 7, there's no longer an integrated SMTP server, and though I've found a number of SMTP servers that can be installed locally and relay mail for me, I want one that won't relay mail.

Does anybody have suggestions on how to accomplish this functionality? I've considered writing my own, but implementing the whole RFC spec seemed like a big task if there's something out there. Maybe there's an open-source project that I could modify just to write the mail to disk instead of delivering it.

Answer

driis picture driis · Nov 14, 2010

Papercut is likely what you want.