Introduction à Mailtrap un faux serveur SMTP pour les tests de pré-production

Ce que vous allez créer

Mailtrap fournit à votre équipe de développement un faux serveur SMTP pour tester, afficher et partager les courriels envoyés depuis les environnements de pré-production et pour tester avec des données réelles sans risque de spammer de vrais clients. Il est créé par Railsware et pour de nombreuses tâches de développement, l'utilisation de Mailtrap sera gratuite..

Pour l’essentiel, vous vous inscrivez à Mailtrap et envoyez tous les courriers électroniques de votre environnement de pré-production via votre faux serveur SMTP Mailtrap..

Ensuite, tous vos mailz appartiennent à Mailtrap. Vous pouvez afficher et déboguer votre courrier électronique dans l'interface graphique conviviale de Mailtrap..

Vous pouvez même utiliser Mailtrap pour placer des dumps de votre base de données de production avec de vrais courriels d’utilisateur via des tests sur votre serveur de transfert. Vos tests automatisés peuvent être exécutés sur le véritable courrier électronique d'envoi de données via Mailtrap, éliminant ainsi le risque que les emails de test soient envoyés à de vraies adresses électroniques de clients..

Combien coûte Mailtrap?

Mailtrap est gratuit pour les petits développeurs ou les petites tâches. Pour des efforts plus importants, les coûts varient entre 120 et 300 dollars par an:

Débuter avec Mailtrap

S'inscrire est facile. Vous pouvez même utiliser votre compte Google ou GitHub:

J'ai utilisé mon compte GitHub et le processus était simple:

Une fois confirmé, vous verrez votre boîte de réception de démonstration dans l'interface graphique de Mailtrap:

Configurer Mailtrap

Ensuite, je vais vous expliquer la configuration de Mailtrap dans votre environnement de développement..

Lorsque vous cliquez sur le Réglages icône dans la liste de la boîte de réception, vous verrez que chaque boîte de réception Mailtrap possède ses propres informations d'identification du serveur SMTP:

Vous pouvez réinitialiser ces informations d'identification quand vous le souhaitez. 

Mailtrap offre une variété d’exemples de configuration:


Pour plus de simplicité, j'utiliserai l'application Hello de notre série Programming With Yii2 pour configurer Mailtrap. Si vous souhaitez utiliser le code à partir de là pour tester Mailtrap, clonez le référentiel GitHub associé à ce tutoriel..

Avec Yii, je mets à jour les paramètres SMTP de SwiftMailer dans config / web.php. Voici le défaut:

 'errorHandler' => ['errorAction' => 'site / error',], 'mailer' => ['class' => 'yii \ swiftmailer \ Mailer', 'viewPath' => '@ app / mailer', 'useFileTransport' => false, 'transport' => ['class' => 'Swift_SmtpTransport', 'host' => 'votre-smtp-host-domain', 'username' => 'votre-email-ou-username ',' password '=>' votre-mot de passe ',' port '=>' 587 ',' cryptage '=>' tls ',],', log '=> [' traceLevel '=> YII_DEBUG? 3: 0, 

Ce que j'ai changé avec mes paramètres Mailtrap:

'errorHandler' => ['errorAction' => 'site / error',], 'mailer' => ['class' => 'yii \ swiftmailer \ Mailer', 'viewPath' => '@ app / mailer', 'useFileTransport' => false, 'transport' => ['class' => 'Swift_SmtpTransport', 'host' => 'mailtrap.io', 'username' => 294XXXXXXXXXXdd20 ',' mot de passe '=>' 403XXXXXXXX2f7 ' , 'port' => '25', 'cryptage' => 'tls',],], 'log' => ['traceLevel' => YII_DEBUG? 3: 0,

Ensuite, j'ai visité http: // localhost: 8888 / hello / user / register pour vous inscrire à nouveau:

Yii envoie un email de confirmation:

Instantanément, le message apparaît dans ma boîte de réception Mailtrap. 

Remarque: il ne faut pas confondre cette information avec la confirmation du compte Mailtrap. Il s'agit de l'e-mail de confirmation du compte de l'application Yii Hello envoyé par mon application..

L’affichage par défaut correspond à ce que vous pourriez voir dans Gmail ou un autre client de messagerie:

Mais il existe de nombreux onglets parmi lesquels choisir pour déboguer le courrier électronique sortant de votre application. Voici la source HTML:

Voici une vue de la validation HTML par rapport à votre email:

Et voici une analyse du score de spam et une liste noire de votre message et de votre serveur:

Mailtrap est un moyen si puissant de déboguer le contenu et le balisage de vos messages électroniques sortants..

Partage des boîtes de réception et des messages avec votre équipe

Si votre équipe est plus grande, vous pouvez inviter tous vos développeurs à accéder à chaque boîte aux lettres avec des liens:

Vous pouvez également transférer automatiquement tous les messages vers leurs propres comptes et les inviter via leurs propres comptes Mailtrap:

L'API Mailtrap

Vous pouvez également rédiger des tests automatisés sur le contenu de la boîte aux lettres Mailtrap à l'aide de son API, documentée sur le rucher. En d'autres termes, vous pouvez exécuter des scripts automatisés sur un instantané de votre base de données de production en direct et vérifier le contenu et le balisage des messages qui seraient remis par votre base de code à l'aide de l'API Mailtrap..

Vouloir apprendre plus?

Les fonctionnalités de Mailtrap et de débogage sont évidemment très utiles et abordables. Si vous souhaitez voir une autre démonstration, voici un exposé éclair sur Mailtrap de Yaroslav Lazor de Railsberry 2012:

C'est un produit tellement simple à utiliser et tellement bénéfique que j'espère que vous pourrez l'essayer vous-même..

S'il vous plaît poster des commentaires, des corrections ou des idées supplémentaires ci-dessous. Vous pouvez parcourir mes autres tutoriels Tuts + sur ma page d’instructeur ou me suivre sur Twitter @reifman.

Liens connexes

  • MailTrap.io
  • Documentation API Mailtrap
  • Suivez Railsware sur Twitter