Esencialmente, se registra en Mailtrap y envía todo el correo electrónico del entorno de preproducción a través de su servidor SMTP Mailtrap falso.
Entonces, todos sus correos electronicos pertenecen a Mailtrap. Puede ver y depurar su correo electrónico dentro de la GUI amigable de Mailtrap.
Incluso puede utilizar Mailtrap para colocar vertederos de su base de datos de producción con correos electrónicos reales de usuario a través de pruebas en su servidor de ensayo. Sus pruebas automatizadas se pueden ejecutar contra el correo electrónico de envío de datos real a través de Mailtrap—eliminando el riesgo de que los correos electrónicos de prueba salgan a direcciones de correo electrónico de clientes reales.
¿Cuánto cuesta Mailtrap?
Para pequeños desarrolladores o pequeñas tareas, Mailtrap es gratuito. Para mayores esfuerzos, los costos varían entre $ 120 y $ 300 al año:
Introducción a Mailtrap
Registrarse es fácil. Incluso puedes usar tu cuenta de Google o GitHub:
Utilicé mi cuenta de GitHub y el proceso fue fácil:
Una vez confirmado, verás tu bandeja de entrada de demostración en la GUI de Mailtrap:
Configuración de Mailtrap
A continuación, voy a guiarlo a través de la configuración de Mailtrap dentro de su entorno de desarrollo.
Al hacer clic en el icono Configuración en la lista de Bandeja de entrada, verá que cada bandeja de entrada de Mailtrap tiene sus propias credenciales de servidor SMTP:
Puede restablecer estas credenciales cuando lo desee.
Mailtrap ofrece una variedad de ejemplos de configuración:
Para simplificar, utilizaré la aplicación Hello de nuestra serie programación con Yii2 para configurar Mailtrap. Si desea utilizar el código de allí para probar Mailtrap, clone el repositorio GitHub vinculado a este tutorial.
Con Yii, estoy actualizando la configuración SMTP de SwiftMailer en config/web.php. Aquí está lo predeterminado:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
| 'errorHandler' => [ 'errorAction' => 'site/error' , ], 'mailer' => [ 'class' => 'yii\swiftmailer\Mailer' , 'viewPath' => '@app/mailer' , 'useFileTransport' => false, 'transport' => [ 'class' => 'Swift_SmtpTransport' , 'host' => 'your-smtp-host-domain' , 'username' => 'your-email-or-username' , 'password' => 'your-password' , 'port' => '587' , 'encryption' => 'tls' , ], ], 'log' => [ 'traceLevel' => YII_DEBUG ? 3 : 0, |
Lo que cambié con mi configuración de Mailtrap:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
| 'errorHandler' => [ 'errorAction' => 'site/error' , ], 'mailer' => [ 'class' => 'yii\swiftmailer\Mailer' , 'viewPath' => '@app/mailer' , 'useFileTransport' => false, 'transport' => [ 'class' => 'Swift_SmtpTransport' , 'host' => 'mailtrap.io' , 'username' => '294XXXXXXXXXXdd20' , 'password' => '403XXXXXXXXXX2f7' , 'port' => '25' , 'encryption' => 'tls' , ], ], 'log' => [ 'traceLevel' => YII_DEBUG ? 3 : 0, |
Entonces, visité http://localhost:8888/hello/user/register para registrarme de nuevo:
Yii envía un correo electrónico de confirmación:
Al instante, el mensaje aparece en mi bandeja de entrada de Mailtrap.
Nota: Esto no debe confundirse con la confirmación de la cuenta de Mailtrap—es el correo electrónico de confirmación de la cuenta de la aplicación Yii Hello enviado por mi aplicación.
La pantalla predeterminada es la que puede ver en Gmail u otro cliente de correo:
Pero hay muchas pestañas para elegir para depurar el correo electrónico saliente de su aplicación. Esta es la fuente HTML:
Esta es una vista de la validación de HTML en tu correo electrónico:
Y aquí está un análisis de la puntuación de spam y la lista negra de su mensaje y servidor:
Mailtrap es una manera tan poderosa de depurar el contenido y el marcado de mensajes de correo electrónico salientes.
Cómo compartir buzones de entrada y mensajes con su equipo
Si su equipo es más grande, puede invitar a todos sus desarrolladores a acceder a cada buzón con vínculos:
O bien, puede reenviar automáticamente todos los mensajes a sus propias cuentas e invitarlos a través de sus propias cuentas de Mailtrap:
La API de Mailtrap
También puede escribir pruebas automatizadas contra el contenido del buzón de correo de Mailtrap utilizando su API, documentada en apiario. En otras palabras, podría ejecutar secuencias de comandos automatizadas contra una instantánea de su base de datos de producción en directo y verificar el contenido y el marcado de los mensajes que serían entregados por su base de código mediante la API de Mailtrap.
¿Quiere aprender más?
Las capacidades de Mailtrap y las funciones de depuración son obviamente muy útiles y asequibles. Si desea ver otra demostración, aquí hay una charla relámpago en Mailtrap de Yaroslav Lazor de Railsberry 2012:
Es un producto tan simple de usar y tan beneficioso que espero que lo pruebes por tu cuenta.
Envíe sus comentarios, correcciones o ideas adicionales a continuación. Puedes navegar por mis otros tutoriales de Tuts+ en mi página de instructor o seguirme en Twitter @reifman.