Используя RSpec, я хотел бы проверить способность моего приложения подключаться к моему SMTP-серверу без (обязательно) доставки любых сообщений.Rspec Тестирование SMTP-соединения
Как я могу открыть соединение (с логином) на сервере электронной почты SMTP и проверить/просмотреть полученный ответ?
Есть несколько почтовых издевательств, которые вы можете использовать, например, вы можете использовать или вы можете использовать http://mailcatcher.me для более системного теста. –
Спасибо. Я думаю, что mailcatcher, вероятно, выполняет большую часть того, что я надеюсь покрыть испытаниями. Чтобы мои тесты были более подробными, я надеялся проверить элементы процесса создания электронной почты, включая проверку параметров smtp. Я знаю, что я могу переключить свои настройки smtp из теста на smtp в конфигурации, но это делает тесты более хрупкими, чем я хотел бы, или, по крайней мере, тестом, который работает только с некоторыми другими настройками, которые вы должны помнить для переключения. –
По соглашению конфигурации (включая конфигурации SMTP) объявляются в файле (например, application.yml), который затем разбивается на этапы ('development',' test', 'production' ...), поэтому вам не нужно ничего переключаться, и тест не является хрупким - тестирование вашей конфигурации не должно быть частью тестирования вашей функциональности ... см. также http://blog.rubybestpractices.com/posts/gregory/032 -эмиссионный-3-configurable.html –