Laravel, jak szybko i bezpiecznie testować e -maile

Laravel, jak szybko i bezpiecznie testować e -maile

Problem

Twoja aplikacja Laravel prawdopodobnie będzie miała możliwość komunikowania się z użytkownikami za pośrednictwem wiadomości e -mail.

Istnieje wiele przeszkód i wyzwań podczas kodowania szablonu e -mail dla Laravel. Najbardziej czasochłonną rzeczą jest upewnienie się, że Twój szablon e-mail działa dobrze i wygląda tak, jak się spodziewałeś.

Oczywiście możesz zarejestrować nowe konto Gmail i utworzyć aplikację z Gmailem. To dałoby prawdziwą dostawę e -maila, którą możesz sprawdzić na przykład na telefonie.

Problem polega na tym, że pracujesz z prawdziwą bazą danych i nie możesz sobie pozwolić na wysyłanie testowych wiadomości e -mail do prawdziwych użytkowników. Jeśli to cię wkurza, mam dla ciebie dobrą wiadomość.

Rozwiązanie

Jak powiedziałem, największym problemem jest to, że nie możesz sobie pozwolić na testowanie prawdziwych użytkowników. Może stać się ogromnym źródłem frustracji dla użytkowników i jest tylko kilka razy, kiedy możesz to zrobić, zanim opuszczą aplikację na dobre.

Moim ulubionym sposobem testowania szablonów e -mail Laravel jest korzystanie z tej usługi o nazwie Mailtrap.io. Sposób, w jaki działa Mailtrap, jest dokładnie tak, jak brzmi, przechwytuje i zatrzymuje wiadomość e-mail na ich serwerze i nie pozwalając, aby przejść do użytkownika końcowego.

Myślę, że ważne jest, aby stwierdzić, że Mailtrap jest w zasadzie narzędziem premium, którego można użyć za darmo. Model Freemium pozwala maksymalnie otrzymać 500 (niedawno zmieniło się z 50). Możesz jednak łatwo je usunąć i po prostu ponowić ponowne użycie w kółko.

Dzięki temu możesz przetestować swój projekt e -mail, a jednocześnie możesz zobaczyć, do kogo poszedł, czego nie możesz zrobić z konto testowym Gmaila.

Jak wiecie, starter .Plik ENV, który otrzymujesz z Laravel, zawiera zmienne, dzięki czemu możesz podłączyć serwer SMTP i wygląda na to:

Mail_driver = SMTP
Mail_host = SMTP.Mailtrap.io
Mail_port = 2525
Mail_username = null
Mail_Password = NULL
Mail_Encryption = NULL

To, co chcesz zrobić, to udać się do Mailtrap.IO i zbieraj brakujące informacje, takie jak nazwa użytkownika i hasło.

Dostarczą Ci to ze strony pulpitu nawigacyjnego.

Po wprowadzeniu tych danych do swojego .Plik ENV, musisz odświeżyć konfigurację: pamięć podręczna, uruchamiając PHP Artisan Config: Cache .

Ta konfiguracja jest powiązana z dostawą e -maila Laravel Core, co oznacza, że ​​działa ona jako e -mail z dostawą systemu. Tak więc każde powiadomienie z aplikacji Laravel będzie używać tego serwera SMTP do dostarczania wiadomości e -mail.

To, co jest dobre w opcji płatnej, to to, że daje to możliwość przekazania tego e -maila na prawdziwy adres e -mail na wypadek, gdyby chcesz to sprawdzić na przykład w swoim programie Outlook.

I to jest kolejna wskazówka, którą chcę podzielić. Microsoft Outlook, a ja mówię o aplikacji komputerowej, ma tendencję do zepsucia projektu e-mail na wypadek, gdybyś próbował wyjść poza zwykły, regularny interfejs użytkownika. I sam tego doświadczyłem, w którym zasadniczo testowaliśmy e -maile, dostarczając je na konta Gmail i korzystając z przeglądarki do wyszukiwania e -maili. Jednak jeden z członków naszego zespołu miał perspektywę, która testowała ich e -maile i zobaczyliśmy drastyczną zmianę projektowania.

Tak więc Mailtrap bardzo Ci pomoże na wypadek, gdybyś musiał przetestować projekt e-maila lub po prostu cały system dostarczania i jest moją usługą, gdy zajmuje się wiadomościami e-mail w fazie rozwoju.