Я провожу некоторое тестирование с Laravel 5.6 (Spark 6.0) и настроенными событиями и уведомлениями.
Я не хочу отправлять электронные письма с каждым тестом, есть ли способ отключить его для тестирования?
Поиск в Google показал добавление значения 'prepend' в конфигурацию Mail:
'pretend' => env('MAIL_PRETEND', true)
Однако это, похоже, не работает, и я не могу найти ничего в документации Laravel для этого. Есть еще способ сделать это в l5.6?
Обновлено: Не работает, я имею в виду, что почта все еще отправляется по электронной почте.
Спасибо!
@Ohgodwhy Электронные письма по-прежнему отправляются правильно, а я этого не хочу. Я не хочу, чтобы их притворили посланными.
Внимательно прочтите ответ на этот вопрос, чтобы электронное письмо было распечатано в файл log, а не отправлено.
@Ohgodwhy Электронные письма по-прежнему отправляются правильно, а я этого не хочу. Я не хочу, чтобы их притворили посланными.
Разве вы не можете изменить адрес электронной почты вашего драйвера в конфигурации для входа в систему, как указано здесь stackoverflow.com/questions/42798745/laravel-mail-to-log?
измените свой MAIL_DRIVER = smtp в файле .env на MAIL_DRIVER = log. Вот и все.
@parthu_panther Это имело бы смысл, изменил phpunit.xml, чтобы отразить и это изменение env.
@Lovelock, если это сработало для вас, сообщите мне, и я отправлю его в качестве ответа.
@parthu_panther Да сработало, вперед!






Чтобы почта не отправлялась каждый раз во время тестирования, вы можете переключить настройки MAIL_DRIVER.
Если это для тестирования, установите настройки на MAIL_DRIVER=log, а для общего использования - на MAIL_DRIVER=smtp.
Возможный дубликат Laravel mail притворяется, что ничего не печатает