Mailtrap : un faux serveur SMTP pour les tests de pré-production des e-mails
Les e-mails sont une partie importante de tout site Web. Nous avions l’habitude d’envoyer des e-mails concernant l’inscription des utilisateurs, les newsletters, les nouvelles offres, les coupons, etc. Avant que ces e-mails ne commencent à être envoyés à de vrais utilisateurs, nous devrions effectuer des tests d’e-mails dans la phase de développement. Dans cet article, nous étudions comment effectuer des tests de sandbox pour vos e-mails.
Mailtrap est un faux serveur de test SMTP qui est utile pour les tests de pré-production des e-mails. En utilisant Mailtrap, vous obtiendrez votre propre boîte de réception où vous pourrez vérifier que vos e-mails s’affichent correctement ou non.
Mailtrap autorise 500 e-mails par mois dans votre boîte de réception gratuitement. Pour une petite application, 500 emails suffisent avec un forfait gratuit. Veuillez consulter leur page de tarification si vous avez besoin d’un quota supplémentaire.
Obtenir les informations d’identification SMTP Mailtrap
Avant d’écrire le code réel des e-mails, vous devez d’abord vous inscrire sur Mailtrap et obtenir les informations d’identification. Bien que Mailtrap propose un forfait payant, les utilisateurs n’ont pas besoin de saisir les détails de leur carte de crédit pour l’enregistrement.
Lors de l’inscription, récupérez vos informations d’identification de serveur SMTP. Vous pouvez modifier ces informations d’identification à tout moment. Reportez-vous à la capture d’écran ci-dessous.
Maintenant, testons un e-mail en utilisant PHPMailer et le serveur SMTP Mailtrap.
Intégration de Mailtrap pour les tests de messagerie
Pour tester les e-mails avec Mailtrap, nous enverrons un e-mail factice. Lors de l’utilisation du serveur SMTP Mailtrap, l’e-mail ne sera pas envoyé dans la boîte de réception de l’utilisateur réel. Au lieu de cela, il sera envoyé dans votre boîte de réception Mailtrap.
Nous utilisons la bibliothèque PHPMailer pour envoyer un email. Vous devez avoir Composer installé sur votre système pour installer la bibliothèque. Ouvrez le terminal dans le répertoire racine de votre projet et exécutez la commande ci-dessous :
composer require phpmailer/phpmailer
Dans le code ci-dessous, remplacez les espaces réservés par vos informations d’identification du serveur SMTP Mailtrap. Définissez également les e-mails selon vos besoins. Pour l’instant, j’utilise mes e-mails.
<?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;
}
Après avoir exécuté le code ci-dessus, votre e-mail doit être envoyé à votre boîte de réception Mailtrap comme suit :
Sous l’onglet Analyse du spam, vous pouvez vérifier le score de spam et la liste noire de votre message et de votre serveur. L’onglet « Vérifier HTML » répertorie la validation HTML par rapport à votre e-mail.
Je vous recommande également de consulter l’article Comment envoyer des e-mails en PHP écrit sur le blog Mailtrap.
Articles Liés
- Envoyer un e-mail à l’aide du serveur SMTP de Gmail à partir d’un script PHP
- Envoi d’e-mails via le serveur SMTP de Gmail dans Laravel
- Comment envoyer un e-mail à l’aide du serveur SMTP de Gmail et de la bibliothèque Swift Mailer