2011-01-10 44 views
19

我的Django 1.2.4应用程序中有一些单元测试。其中一项测试需要验证电子邮件是否在特定条件下发送。我怎样才能做到这一点?验证邮件是从单元测试发送的

理想情况下,它是编程式的,但它也很好打印到控制台的电子邮件正文。

回答

37

最新的Django测试文档有一个Email Services部分。

然后你只需这样做:

from django.core import mail 

print mail.outbox[0].body 

HTML版本通过连接替代MIME类型,您可以访问处理(如果你连接一个),例如

content, mimetype = mail.outbox[0].alternatives[0] 

发件箱对象EmailMessages,further documented here

+1

还要感谢如何获取电子邮件本身(Django文档只显示如何获取发件箱的主题)。您是否知道发件箱的其他属性的参考,例如消息的html版本? – 2013-05-20 07:42:22