Я ищу бесплатный тестовый smptp-сервер, который может сохранять электронные письма в файлы для моих тестов разработки. Поскольку моя среда разработки - это Windows, я предпочитаю запускать тестовый почтовый сервер в Windows, но я могу рассмотреть возможность установки любых других альтернатив на основе Linux.
smtp-сервер разработки для windows
Ответы (7)
Есть несколько:
- SMTP Impostor (бывший SMTP-сервер Antix), NuGet package - выглядит очень хорошо
- Dumbster - поддельный SMTP-сервер под лицензией Apache
Или вы также можете настроить его в своем web.config, чтобы просто хранить электронные письма в файловой системе (способ конфигурации того, что «шелковистый» предложил в коде):
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="c:\temp\mails\"/>
</smtp>
</mailSettings>
</system.net>
Марк
Я знаю, что это старый пост, но я также знаю о http://smtp4dev.codeplex.com/, который Я тоже рекомендую. Он находится на панели задач, а затем всплывает, когда вы отправляете ему электронные письма. Это позволяет вам затем достаточно глубоко изучить электронное письмо.
-- Редактировать:
Этот совет действителен, только если вы используете .NET
Проверьте это здесь. Если вы установите его правильно, он просто сохранит ваши электронные письма на диске :)
SmtpClient client = ...;
client.PickupDirectoryLocation = @"c:\foo\emails\"; //"
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
-- Редактировать
На всякий случай, если некоторые люди этого не понимают, это означает, что вам не нужен другой SMTP-сервер для test / dev, вы просто установите соответствующую переменную.
-- Редактировать
Для полноты, как показано ниже marc_s, вы можете настроить это в конфигурациях с помощью:
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="c:\foo\emails\" />
</smtp>
</mailSettings>
</system.net>
confguration\system.net\mailSettings\smtp
element.
- person Thorarin; 30.08.2009
Модуль smtpd Python имеет DebuggingServer, который выводит все сообщения в стандартный вывод. Если вы перенаправите их в файл, все готово.
Для этого мы использовали Mailtrap. Он дает вам учетную запись удаленного SMTP-сервера и прямой доступ ко всем почтовым сообщениям в нем. Таким образом, вы просто вводите данные учетные данные smtp в свое приложение, и после этого вся электронная почта, отправленная вашей системой, будет видна в mailtrap. И вы можете легко посмотреть исходный код почты и загрузить его в свою локальную систему. Вы можете увидеть пример здесь
В mailtrap у вас может быть столько учетных записей smtp, сколько вы хотите (разные учетные записи для разных сред приложений или разные приложения). Также вы можете управлять доступом к своей учетной записи (так что только доверенные люди будут получать ваши электронные письма), и вы можете пересылать некоторые электронные письма на настоящие адрес электронной почты.
Ниже приведены ссылки, которые я нашел
Простой макет SMTP-сервера для .NET \ -. СЕТЬ
Дамбстер - Java
mocksmtpd - Ruby
Используйте в зависимости от выбранного вами языка и платформы.
Также есть более ранняя публикация для .NET Тестирование SMTP с .net
Papercut (http://papercut.codeplex.com/discussions) на данный момент является самым простым и элегантным. . Простой exe-файл, который прослушивает порт 25 и отображает электронные письма.