Email Testing Laravel di Lokal Dengan Mailhog
Email saat ini merupakan hal paling essensial dalam development apps untuk mengirimkan sesuatu ke klien pada saat ini, entah itu OTP, token lupa kata sandi, invoice maupun informasi sensitif lainnya. Kali ini saya akan membagikan pengalaman saya cara membuat pengiriman email menggunakan laravel dan testingnya di lokal dengan mailhog.
Mailhog sendiri adalah tools untuk developer yang digunakan untuk membuat SMTP palsu yang dipakai untuk melakukan testing kirim email pada PC atau laptopnya tanpa harus konek dulu ke internet atau menggunakan SMTP betulan, Tapi kemudian muncul pertanyaan mengapa menggunakan smtp palsu dengan asumsikan developer sudah punya SMTP server sendiri untuk digunakan. Beberapa alasan ini mungkin bisa menjadi pertimbangan adalah sebagai berikut ini:
- Tidak memerlukan internet.
- Tidak perlu setup SMTP sungguhan kalau hanya untuk development.
- Lebih cepat.
Berikut ini caranya dan setup mailhognya disini saya menggunakan docker untuk menjalankan mailhog caranya dengan jalankan, pertama kalian harus install docker dulu di laptop atau PC kalian. Jalankan command dibawah ini untuk menginstall dan menjalankan mailhognya.
docker run — name=mailhog -p 2525:1025 -p 8025:8025 mailhog/mailhog
Kemudian cek apakah container mailhog sudah berjalan di Laptop atau PC kita dengan
docker ps -a
Jika sudah ada seperti gambar diatas kemudian buka http://0.0.0.0:8025
Lanjut kemudian kita setup untuk di laravelnya seperti berikut ini
- Buat mailable class dengan artisan caranya dengan
php artisan make:mail TestMail
2. Buat viewnya
Buat routenya
Kemudian jalankan laravel
php artisan serve
Kemudian test di browser
http://localhost:8000/send-mail