.net 在开发中发送测试电子邮件,没有垃圾邮件或拒绝问题

.net 在开发中发送测试电子邮件,没有垃圾邮件或拒绝问题,.net,windows,.net,Windows,我在虚拟机中运行我的开发环境,需要测试来自我的应用程序的电子邮件的传递和外观。问题是,当我的SMTP服务器开始向我的公司电子邮件帐户发送大量邮件时,该服务器很快就会被拒绝,成为垃圾邮件的来源。当然,主要的互联网电子邮件提供商也永远不会接受来自这样一个服务器的电子邮件 有一个问题的解决方案: 我已使用.NET指定的dickupdirectory选项将邮件发送到一个文件文件夹,并在outlook express中打开,但问题是有效的图像始终显示为损坏的图像。要避免您的电子邮件被标记为垃圾邮件,您必须

我在虚拟机中运行我的开发环境,需要测试来自我的应用程序的电子邮件的传递和外观。问题是,当我的SMTP服务器开始向我的公司电子邮件帐户发送大量邮件时,该服务器很快就会被拒绝,成为垃圾邮件的来源。当然,主要的互联网电子邮件提供商也永远不会接受来自这样一个服务器的电子邮件

有一个问题的解决方案:
我已使用.NET指定的dickupdirectory选项将邮件发送到一个文件文件夹,并在outlook express中打开,但问题是有效的图像始终显示为损坏的图像。

要避免您的电子邮件被标记为垃圾邮件,您必须与管理公司电子邮件服务器的系统管理员联系。他们可以控制垃圾邮件在系统中的标记方式,并可以排除您的电子邮件


您提到了一个关于损坏图像的问题,但这与垃圾邮件无关,作为一个问题(有适当的标题)可能会更好。

您可以使用单元测试和模拟邮件程序实现来完成许多电子邮件场景。例如,您可以为SmtpClient类创建接口和包装器。这个包装器应该实现接口。使用依赖项注入将依赖的SmtpWrapper类(作为接口)提供给使用它的类。在单元测试中,您可以向被测试的类提供接口的模拟实例,并确保它正确地将您期望的消息发送给给定测试设置的收件人


最终,您将不得不运行一些集成测试,但可能要少得多。在集成测试中,可以使用测试SMTP服务器。鉴于您的大多数测试都是在模拟实现的单元测试中运行的,这可能足以防止您的公司邮件服务器误认您的测试服务器。

您的答案:,一个开源的伪SMTP测试服务器。这是开发人员必备的终极电子邮件测试应用程序。

如果您运行Post Hoc,您可以模拟发送任意数量的电子邮件,但电子邮件永远不会离开主机。我在虚拟机中运行此操作,而电子邮件将保留在虚拟机中。达到任何垃圾邮件限制都没有问题。您发送到的地址数量没有限制。然后,它提供了一个用户界面,用于检查发送的电子邮件。免费开放源码:

Git中心地址:


另请参阅博文:

使用类似Mailnest.io的服务将所有测试电子邮件集中在一个地方。通过这种方式,您可以确保该域不会被列入黑名单,也不会意外地向客户发送电子邮件。此外,您的开发人员和测试人员在电子邮件测试方面进行协作也会更容易。

听起来并不是这样,您的两段文章也有同样的问题。损坏的图像是由一种原因造成的,服务器上的垃圾邮件过滤器是另一种原因。作为我问题的部分解决方案,我将电子邮件发送到指定的接收目录,而不是通过网络发送。它将这些文件写入.eml文件。这些文件的格式是这样的,当您在outlook中打开它们时,不会显示有效的图像。在我的情况下,控制公司服务器上的垃圾邮件设置不是一个选项。破碎图像问题与我尝试的一种解决方案直接相关。使用.net SMTP指定的ICKUPdirectory选项时,.eml文件的格式和在outlook中的显示方式有问题,这不是损坏图像的问题。+1完全同意,开发人员不应测试邮件传递。他应该只测试消息被发送的事实。生成的电子邮件的格式可以在不实际发送的情况下进行测试。