Mailtrap: un servidor SMTP falso para pruebas de correo electrónico de preproducción
Los correos electrónicos son una parte importante de cualquier sitio web. Solíamos enviar correos electrónicos sobre el registro de usuarios, boletines informativos, nuevas ofertas, cupones, etc. Antes de que estos correos electrónicos comiencen a enviarse a usuarios reales, deberíamos hacer pruebas de correo electrónico en la fase de desarrollo. En este artículo, estudiamos cómo realizar pruebas de sandbox para sus correos electrónicos.
Mailtrap es un servidor de prueba SMTP falso que es útil para las pruebas de correo electrónico de preproducción. Con Mailtrap, obtendrá su propia bandeja de entrada donde puede verificar que sus correos electrónicos se muestren correctamente o no.
Mailtrap permite 500 correos electrónicos por mes en su bandeja de entrada de forma gratuita. Para una aplicación pequeña, 500 correos electrónicos son suficientes con un plan gratuito. Consulte su página de Precios si necesita una cuota adicional.
Obtenga las credenciales SMTP de Mailtrap
Antes de escribir el código real para los correos electrónicos, primero debe registrarse en Mailtrap y obtener las credenciales. Aunque Mailtrap ofrece un plan de pago, los usuarios no necesitan ingresar los detalles de la tarjeta de crédito para registrarse.
Al registrarse, obtenga las credenciales de su servidor SMTP. Puede cambiar estas credenciales en cualquier momento. Consulte la captura de pantalla a continuación.
Ahora, probemos un correo electrónico usando PHPMailer y el servidor SMTP Mailtrap.
Integración de Mailtrap para pruebas de correo electrónico
Para las pruebas de correo electrónico con Mailtrap, le enviaremos un correo electrónico ficticio. Al utilizar el servidor SMTP de Mailtrap, el correo electrónico no se enviará a la bandeja de entrada del usuario real. En su lugar, se enviará a su bandeja de entrada de Mailtrap.
Usamos la biblioteca PHPMailer para enviar un correo electrónico. Debe tener Composer instalado en su sistema para instalar la biblioteca. Abra la terminal en el directorio raíz de su proyecto y ejecute el siguiente comando:
composer require phpmailer/phpmailer
En el siguiente código, reemplace los marcadores de posición con sus credenciales del servidor Mailtrap SMTP. Además, configure los correos electrónicos según sus requisitos. Por ahora, estoy usando mis correos electrónicos.
<?php
//Import PHPMailer classes into the global namespace
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require_once 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
$mail->isSMTP();
$mail->Host = 'smtp.mailtrap.io'; //mailtrap SMTP server
$mail->SMTPAuth = true;
$mail->Username = 'YOUR_USERNAME'; //username
$mail->Password = 'YOUR_PASSWORD'; //password
$mail->Port = 465; //smtp port
$mail->setFrom('[email protected]', 'Artisans Web');
$mail->addAddress('[email protected]', 'Sajid');
$mail->isHTML(true);
$mail->Subject = 'Mailtrap Email';
$mail->Body = 'Hello User, <p>This is a test mail sent through Mailtrap SMTP</p><br>Thanks';
if (!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: '. $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
} catch (Exception $e) {
echo 'Message could not be sent.';
echo 'Mailer Error: '. $mail->ErrorInfo;
}
Al ejecutar el código anterior, su correo electrónico debe enviarse a su bandeja de entrada de Mailtrap de la siguiente manera:
En la pestaña Análisis de correo no deseado, puede verificar la puntuación de correo no deseado y la lista negra de su mensaje y servidor. La pestaña ‘Verificar HTML’ mostrará la validación de HTML en su correo electrónico.
También recomiendo consultar el artículo Cómo enviar correos electrónicos en PHP escrito en el blog de Mailtrap.
Artículos relacionados
- Enviar correo electrónico utilizando el servidor SMTP de Gmail desde PHP Script
- Envío de correo electrónico a través del servidor SMTP de Gmail en Laravel
- Cómo enviar correo electrónico utilizando el servidor SMTP de Gmail y la biblioteca Swift Mailer