我有很多发送电子邮件的应用程序。有时候一次只能发一两条信息。有时候是成千上万条信息。
在开发过程中,我通常用我自己的地址代替任何收件人的地址来进行测试。我相信其他人也是这么做的,直到他们受够了,找到了更好的解决办法。
我在考虑创建一个虚拟 SMTP 服务器,该服务器捕获消息并将其转储到 SQLLite 数据库或 mbox 文件中,或者其他任何东西。
但是 当然这样的工具已经存在了吗? 你如何测试发送电子邮件?
也许你想要的就是垃圾车。这是一个用 Java 编写的开源假 SMTP 服务器。它取代了真正的 SMTP 服务器,因此您可以在一个真实的设置中测试您的应用程序,而无需输出任何代码。您可以确保将正确的邮件发送到 SMTP 服务器,而无需实际传递邮件。
几个星期前,我遇到了同样的问题,我写了这样一句话: http://smtp4dev.codeplex.com
Windows7/Vista/XP/2003/2010兼容虚拟 SMTP 服务器。位于系统托盘中,不传递接收到的消息。可以快速查看、保存收到的消息,并检查源/结构。用于测试/调试生成电子邮件的软件。
这与 smtp4dev 类似,只不过是在 Java 中实现的,所以它适用于非 Windows 开发人员。
Http://www.aboutmyip.com/aboutmyxapp/devnullsmtp.jsp
还有 剪纸和 海王星,糟糕的是这些都不能以便携的方式运行。
现在有一个基于网络的剪纸版本。
而且基于应用程序的版本对我来说也很好用。
几年前,我遇到了下面的解决方案的 .NET 平台。
<system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="C:\TestMailMessages\" /> </smtp> </mailSettings> </system.net>
只需将上面的代码放在 App.config 或 Web.config 中。当您现在发送一条消息时,它将作为一个文件存储在您提供的“ pickupDirectoryLocation”目录中。非常有效。
如果你正在使用 java,我会使用 更聪明: Wiser 是一个简单的 SMTP 服务器,您可以使用它来对发送邮件的应用程序进行单元测试。
您也可以使用 netDumbster。
Http://netdumbster.codeplex.com/
多年来,我一直在使用 ToolHeap 中的“测试邮件服务器工具”。
Http://www.toolheap.com/test-mail-server-tool/
这是一个简单的应用程序,运行在您的系统托盘和转储电子邮件到一个文件夹。它还可以配置为在默认邮件程序中打开每个电子邮件。