Email Testing Laravel di Lokal Dengan Mailhog

Suko Widodo
2 min readSep 30, 2022

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:

  1. Tidak memerlukan internet.
  2. Tidak perlu setup SMTP sungguhan kalau hanya untuk development.
  3. 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

  1. 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

--

--