Как тестировать отправку писем, ничего не отправляя (настройка SMTP-песочницы)
SMTP-песочница за четыре шага и проверка настоящего письма в CI: примеры для Laravel, Django, Node и командной строки плюс детали, которые ломаются в проде.
Практичные статьи без воды о тестировании почты и вебхуков до того, как их увидит пользователь.
Выбирайте по своему вопросу: что использовать вместо Mailtrap, как тестировать вебхуки локально без туннеля, как не пустить тестовые письма в реальные ящики и как отдать результат на проверку скрипту или ИИ-ассистенту.
SMTP-песочница за четыре шага и проверка настоящего письма в CI: примеры для Laravel, Django, Node и командной строки плюс детали, которые ломаются в проде.
Четыре способа тестировать вебхуки локально: постоянный catch-all URL, туннель, повторная доставка от провайдера и локальная ловушка — плюс разбор запроса и проверка подписи.
Что использовать вместо Mailtrap: Mailpit, smtp4dev и заброшенный MailHog в сравнении с приватно хостируемой песочницей, плюс чек-лист переезда за десять минут.
Хватит вставлять скриншоты в чат: та же read-only ссылка отдаёт JSON или простой текст, чтобы модель проверила тему, заголовки, ссылки и тело каждого письма.
MailHog не поддерживается уже несколько лет. Чем его заменить (Mailpit, smtp4dev, приватно хостируемая песочница), как переехать за пять минут и что вы при этом теряете.
Mailpit вы запускаете сами, MailHog — то, что он заменил, Mailtrap — сервис по подписке: сравнение по обслуживанию, цене, месту хранения писем и командным функциям.
Что такое mailtrap.io, чем ограничен его бесплатный тариф по счётчику, что означают запросы «mail trap», «trap email» и «mailtrap login» — и какие есть бесплатные альтернативы.
Сервис Mailpit для вашего compose-файла: порты, том с данными чтобы письма переживали перезапуск, конфигурации приложений, healthcheck для CI и ошибки, которые стоит знать заранее.
Mail::fake() доказывает, что код вызвал отправку; настоящая SMTP-песочница доказывает, что письмо правильное. Обе настройки, стили проверок, ловушка с очередью и ошибки, из-за которых сломанное письмо уходит в прод.
На что смотреть, когда перехваченные payload-ы настоящие: отзыв доступа, noindex, история запросов, read-only шаринг и машинный экспорт — и как на каждый пункт отвечает этот инстанс.