รู้จักกับ Mailtrap เครื่องมือที่ใช้สำหรับทดสอบการส่งอีเมล

Thanainan Khamthaen
I GEAR GEEK
Published in
3 min readDec 28, 2019

วันนี้เราจะมาทำความรู้จักกันว่า MailTrap คืออะไรกันแน่ ? และมันมีดียังไง ?

Mailtrap คืออะไร ?

เครื่องมือที่ช่วยทำให้การทดสอบส่งอีเมลเป็นเรื่องง่าย ช่วยยังไงก็คือ ปกติแล้วการส่งอีเมลจะส่งไปที่ Inbox ของผู้บริการอีเมลต่าง เช่น gmail, outlook, yahoo แต่สำหรับ mailtrap อีเมลจะยังไม่ส่งไปที่อีเมลของผู้รับ แต่อีเมลจะถูกส่งเข้าไปที่ Inbox ของ mailtrap ผ่านทาง SMTP server ของ mailtrap ทำให้การทดสอบอีเมล template รวมถึง event ต่าง ๆ ในการส่งอีเมล สามารถดูได้จาก Inbox ของ mailtrap ได้เลย

ตารางราคาของ Mailtrap

Pricing plan

เนื่องจากตัวนี้เป็นเครื่องมือที่มีค่าใช้จ่าย แต่ก็มีแพลนแบบฟรีให้ใช้ ตรงนี้เราจะโฟกัสที่แพลนแบบฟรี ซึ่งประกอบไปด้วย

  • จำนวนที่ทดสอบอีเมลต่อเดือน 500 ครั้ง
  • การส่งอีเมลใน 10 วินาที จำกัดอยู่ที่ 2 ครั้ง
  • มีกล่อง Inbox 1 กล่อง
  • จำนวนอีเมลสูงสุดที่เก็บใน Inbox สูงสุด 50 อีเมล
  • สามารถเข้าถึง API ได้ อย่างเช่น การดูหรือลบอีเมล ผ่าน RESTFull API ดูเพิ่มเติมได้ที่ https://mailtrap.docs.apiary.io
  • ขนาดของอีเมลสูงสุดที่ 5 MB

จากที่ได้ลองใช้ก็เพียงพอสำหรับโปรเจคที่ส่งอีเมลไม่เยอะมาก ถ้าอีเมลใน Inbox เต็ม ก็กดลบทั้งหมด แล้วส่งอีเมลใหม่ต่อได้ครับ

ขั้นตอนการทดสอบอีเมลด้วย Mailtrap

  1. คลิปไปที่ Inbox
  2. คักลอก SMTP config วางไปที่ Library ที่ส่งอีเมล
  3. ทำการส่งอีเมล

อาจจะมองไม่เห็นภาพ แต่ผมมีสาธิตให้ดูครับ

Inbox

หลังจากเข้าสู่ระบบของ Mailtrap แล้วคลิกไปที่ Inbox ในที่นี้ inbox ผมชื่อ zerojame ซึ่งผมได้เปลื่ยนชื่อไว้ ซึ่งปกติจะชื่อ demo inbox

หลังจากเข้า inbox มาแล้วจะได้ค่า SMTP config ตามนี้ครับ

mkdir nodemailer-mailtrap
cd nodemailer-mailtrap
npm init -y
npm i nodemailer

สร้างโฟลเดอร์, init package และลง package nodemailer ในทีนี้ผมใช้ตัวส่งอีเมลเป็น Nodemailter ซึ่งใครที่ทำตามต้องมี Node.js ด้วยนะครับ

สร้างไฟล์ index.js

อธิบายคร่าว ๆ นะครับ โค้ดนี้ส่งอีเมลจาก foo@example.com ไปที่ bar@example.com และ baz@example.com มี subject คือ Hello ✔

มี html เป็น <b>Hello world?</b> โดยแนบไฟล์รูปไปด้วย 1 รูป

node index.js

ทำการรัน node index.js

หลังจากนั้นอีเมลที่ทำการส่งอีเมลก็เข้ามาที่ inbox จะเจออีเมลที่เราส่งเข้ามา สามารถกดดูอีเมลเหมือนพวกบริการอีเมลอื่น ๆ

ในอีเมลก็แสดงเป็น HTML ตามที่เราส่งมา เราสามารถเช็คได้ว่าที่เราทำตรงกับ Template ที่วางไว้มั้ย ไฟล์รูปขึ้นมั้ย หรือมีไฟล์แนบมาด้วยรึเปล่า ?

ในหน้านี้ก็แสดงเป็นโค้ดแบบ html

ในหน้านี้ก็เป็นรายงานการ spam ต่าง ๆ

มีการตรวจสอบ HTML และ CSS ว่าถูกต้องรึเปล่า

สำหรับ Mailtrap ก็เป็นเครื่องมือช่วยได้มากในการพัฒนา Template การตรวจสอบ HTML ไฟล์แนบต่าง ๆ และก็ช่วยในการทดสอบ event อีเมลต่าง ๆ ว่า event นี้ถูกส่งจริงหรือไม่ ? สำหรับบทความนี้ขอจบแต่เพียงเท่านี้ครับ

--

--