Я хочу протестировать Java-код для отправки электронной почты. Я не хочу использовать какой-либо коммерческий почтовый клиент или подключаться к любым внешним почтовым провайдерам (например, Gmail или Yahoo). Я хотел бы знать, есть ли какое-либо программное обеспечение, которое позволяет пользователю настраивать фиктивные адреса электронной почты и сервер (локально), которые могут использоваться в моем программном обеспечении для отправки и получения писем. Я просто хочу проверить функциональность Java-кода.Простой локальный SMTP-сервер
ответ
Для тестирования электронной почты попробуйте Dumbster. С этой страницы:
Dumbster очень простой сервер поддельной SMTP предназначен для приложений тестирования модулей и системы, которые посылают сообщения по электронной почте. Он отвечает на все стандартные команды SMTP, но не доставляет сообщения пользователю. Сообщения сохраняются внутри Dumbster для последующего извлечения и проверки .
The Dumbster легко вписывается в вашу стратегию тестирования. Как , так как ваше приложение обращается к серверу электронной почты с помощью SMTP, тогда Dumbster может быть использован для тестирования приложения без изменений кода.
А, это тот, который я пытался запомнить! Я знал, что узнаю это, как только увижу, но я просто не мог назвать это имя. – Argyle
Dumbster [сломан] (http://sourceforge.net/p/dumbster/bugs/15/). –
_ В качестве примечания стороны: _ есть [несколько _forks_] (https://github.com/search?utf8=%E2%9C%93&q=dumbster&type=) исходного «Dumbster», которые улучшают его функциональность по-разному. – informatik01
Пробег: GreenMail. Он ориентирован на использование JUnit, но он должен делать то, что вам нужно. Вы можете запустить его в экземпляре JBoss или попросите JUnit-тесты отправлять почту себе, в зависимости от ваших конкретных потребностей.
Есть еще несколько подобных битов программного обеспечения, но это тот, который я использовал и был доволен этим.
Вы можете использовать Wiser в библиотеке SubEthaSMTP, цель Wiser - это именно то, что вы хотите, модульное тестирование.
Код ошибки Wiser: http://code.google.com/p/subethasmtp/wiki/Wiser – palacsint
Также не работает, когда мой модульный тест отправляет 2 html-сообщения по электронной почте, wiser получает 3 как-то. К счастью, GreenMail справляется с этим. – okutane
okutane: Думаю, вы отправили две письма с тремя получателями. API Wiser возвращает письма получателями. Это действительно не в последней выпущенной версии, но в trunk содержится обновленный JavaDoc, чтобы сделать это более очевидным: «Количество почтовых транзакций и количество писем могут быть разными. Если сообщение получено с несколькими получателями в одном mail , то список будет содержать больше экземпляров WiserMessage, один для каждого получателя. " –
на Leopard вы можете начать локальный SMTP-сервер (Postfix) на OS-X Leopard
sudo vi /System/Library/LaunchDaemons/org.postfix.master.plist
перед закрывающим тегом в конце:
<key>RunAtLoad</key> <true/> <key>KeepAlive</key> <true/>
затем начать дело с
sudo postfix start
теперь вы проверяете, работает ли служба:
telnet localhost 25
javamail-file-transport сохраняет сообщения электронной почты в файлы вместо отправки их через SMTP-сервер.
javaMail extensions проект на GitHub.
Он добавляет файл транспорта, что позволяет:
- Сохранить почту в виде файлов в формате
text
вместо отправки их - СОХРАНИТЬ почты в файлы в формате
mbox
вместо отправки их - добавить журнал информацию вместо отправки по электронной почте
Я предпочитаю Fake SMTP для этого. Это настольное приложение (упакованное в файл jar). Поскольку он написан на Java, вы можете запускать его как из Linux/Mac/Windows
Это неинвазивное и чистое решение, по крайней мере, с применением пружин – Stackee007
Я использовал Mailtrap несколько раз, и я могу порекомендовать его.
use the Aspirin Из документов: Аспирин является встраиваемым SMTP-сервером только для отправки на Java-разработчикам.
удивительные Докер
https://hub.docker.com/r/mailhog/mailhog/
(Github - https://github.com/mailhog/MailHog)
Этот Докер имеет два порта:
Один порт для отправки SMTP сообщений электронной почты (SMTP: //0.0.0.0: 1025 /)
Второй порт дисплея электронной почты в Интернете (http://0.0.0.0:8025/)
пробег докер:
docker pull mailhog/mailhog
docker run --name=mailhog -d -p 1025:1025 -p 8025:8025 mailhog/mailhog
- 1. Простой локальный тест DynamoDB
- 2. Akka: Как запустить простой локальный кластер?
- 3. Самый простой способ настроить локальный сервер subversion?
- 4. Akka и простой локальный кеш (возможно, Guava)
- 5. Простой способ контролировать локальный хостинг Camel
- 6. Простой локальный сервер SIP вместо звездочки
- 7. простой запрос Ajax на локальный сервер nodejs
- 8. Хороший, бесплатный, простой, не «пробный» локальный SMTP-сервер для разработки?
- 9. Маленький простой локальный магазин данных для хранения пользовательских настроек
- 10. Самый простой способ сообщить локальный узел erlang из команды оболочки
- 11. Каков самый простой способ сделать локальный адресный доступ общедоступным?
- 12. Каков самый простой способ сделать локальный пульт для java-программы?
- 13. Самый простой способ генерации javadoc из репозитория Maven (локальный)?
- 14. Самый простой в настройке локальный веб-сервер для Windows
- 15. Есть ли простой способ превращения глобального var в локальный var?
- 16. Самый простой способ выполнить локальный файл из Firefox?
- 17. Самый простой способ передать папку через SSH на локальный?
- 18. Простая загрузка изображений на простой локальный сервер от андроид эмулятор
- 19. простой синтаксический анализ json с использованием папки с ресурсами (локальный)
- 20. Локальный jquery.js не загружается в простой файл html
- 21. Rails 3.2 Монтируемый локальный локальный локальный локатор
- 22. Невозможно открыть локальный файл - Chrome: Не разрешается загружать локальный ресурс
- 23. Локальный project.json (сохранение SCM)
- 24. Как проверить локальный бот?
- 25. Локальный javascript не может открыть локальный файл
- 26. Локальный цикл видеофайлов tvOS
- 27. Невозможно читать локальный ресурс
- 28. Как получить локальный IP-адрес
- 29. отправить по электронной почте локальный
- 30. Преобразование datetime в локальный python
Проверьте это .. http://enbiso.github.io/dummy-smtp-server/ –