我正在寻找一个免费的测试smptp服务器,可以将电子邮件保存到文件进行开发测试。由于我的开发环境是Windows,我更喜欢测试电子邮件服务器在Windows上运行,但我可以考虑安装任何其他基于Linux的替代方案。
答案 0 :(得分:35)
有几个:
或者您也可以在 web.config 中进行设置,只是将电子邮件存储在文件系统中(代码中提出的“丝滑”的配置方式):
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="c:\temp\mails\"/>
</smtp>
</mailSettings>
</system.net>
马克
答案 1 :(得分:23)
我知道这是一个旧帖子,但我也知道http://smtp4dev.codeplex.com/我也会推荐。它位于您的任务栏上,然后在您向其发送电子邮件时弹出。它允许您在相当深度的情况下检查电子邮件。
答案 2 :(得分:12)
- 编辑:
此建议仅在您使用.NET
时有效检查this。如果你设置得恰当,它只会将你的电子邮件存储在磁盘上:)
SmtpClient client = ...;
client.PickupDirectoryLocation = @"c:\foo\emails\"; //"
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
- 编辑
万一有些人没有得到它,这意味着你不需要另一个SMTP服务器用于测试/开发,你只需要适当地设置变量。
- 编辑
为了完整性,如下面的marc_s所示,您可以通过以下方式很好地设置:
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="c:\foo\emails\" />
</smtp>
</mailSettings>
</system.net>
答案 3 :(得分:5)
Python smtpd模块有一个DebuggingServer,它将所有消息打印到stdout。如果将它们重定向到文件,则应该完成。
答案 4 :(得分:5)
我们使用了Mailtrap。它为您提供远程smtp服务器帐户并直接访问其中的所有邮件。因此,您只需在应用程序中输入给定的smtp凭证,然后系统发送的所有电子邮件都将显示在mailtrap上。您可以轻松查看邮件的源代码,并将其下载到本地系统。您可以看到示例here
在mailtrap上,您可以拥有任意数量的smtp帐户(不同应用程序环境的不同帐户或不同的应用程序)此外,您还可以管理对帐户的访问权限(因此只有受信任的人才会收到您的电子邮件),您可以转发一些电子邮件到真实的电子邮件地址。
答案 5 :(得分:3)
以下是我找到的链接
A Simple SMTP Server Mock for .NET \ - .NET
Dumbster - Java
mocksmtpd - Ruby
根据您选择的语言和平台使用。
还有一篇早期的.NET帖子 Testing SMTP with .net
答案 6 :(得分:2)
剪纸(http://papercut.codeplex.com/discussions)是目前为止最简单,最优雅的剪纸。侦听端口25并显示电子邮件的简单exe文件。