Today a coworker showed me a very easy way to test django code that sends emails. It's straight from the documentation:
Another approach is to use a “dumb” SMTP server that receives the e-mails locally and displays them to the terminal, but does not actually send anything. Python has a built-in way to accomplish this with a single command:
python -m smtpd -n -c DebuggingServer localhost:1025
This command will start a simple SMTP server listening on port 1025 of localhost. This server simply prints to standard output all e-mail headers and the e-mail body. You then only need to set the
EMAIL_PORTaccordingly, and you are set.
George Griffin: Great! I was just having this problem. I was just uploading the whole project to my server every time I wanted to test it. Thanks, Tim!
Steve Achabal: Thanks for this post. I am new at django and this will help a lot.