Comment développer et tester une application qui envoie des e-mails (sans remplir la boîte aux lettres de quelqu'un avec des données de test)? [fermé]


129

J'ai beaucoup d'applications qui envoient des e-mails. Parfois, c'est un ou deux messages à la fois. Parfois, ce sont des milliers de messages.

En développement, je teste généralement en substituant ma propre adresse aux adresses des destinataires. Je suis sûr que c'est ce que font tout le monde, jusqu'à ce qu'ils en aient assez et trouvent une meilleure solution.

Je pensais créer un serveur SMTP factice qui capture simplement les messages et les vide dans une base de données SQLLite, ou un fichier mbox, ou autre.

Mais sûrement un tel outil existe-t-il déjà? Comment testez-vous l'envoi d'e-mails?


42
@casperOne Pourquoi clore cette question trois ans et demi plus tard? C'est un problème simple avec une poignée de solutions utiles. Il n'y a pas eu de débat, de sondage ou de discussion approfondie. Si cette page devait disparaître des résultats de recherche Google, améliorerait-elle Internet?
Patrick McElhaney

1
C'est une question de liste d'achats / de recommandation de produit (et aussi intrinsèquement subjective et ouverte: «comment testez-vous l'envoi d'e-mails»), dont aucune n'est plus adaptée au site.
casperOne

3
@casperOne Puis reformulez la question pour qu'elle ne soit pas aussi subjective. Je ne cherchais pas le meilleur produit de la catégorie X. Je demandais si la catégorie X existe. Quoi qu'il en soit, vous n'avez pas répondu à ma question. Convainquez-moi que la suppression de cette page améliorerait Internet et je la supprimerai moi-même.
Patrick McElhaney

12
@casperOne Je suis tombé sur cette question de Google demandant les options basées sur Windows (par opposition aux options Linux auxquelles j'ai eu une exposition précédente). J'ai trouvé tous les liens utiles. Cette page Web nous manquera cruellement.
justin.lovell

5
Eh bien, je cherchais juste un outil de serveur de messagerie Windows qui prend juste les mails de localhost et je l'ai trouvé simple et facile par cette question. La réponse positive est tout ce que la plupart des gens recherchent, donc je ne vois pas pourquoi vous voulez fermer cela car il fait ce que la majorité des gens attend.
sveri

Réponses:


84

J'ai rencontré le même problème il y a quelques semaines et j'ai écrit ceci: http://smtp4dev.codeplex.com

Serveur SMTP factice compatible Windows 7 / Vista / XP / 2003/2010. Se trouve dans la barre d'état système et ne délivre pas les messages reçus. Les messages reçus peuvent être rapidement visualisés, enregistrés et la source / structure inspectée. Utile pour tester / déboguer les logiciels qui génèrent des e-mails.


+1 Un peu bogué mais la surcharge fait ce dont elle a besoin. Merci!
David

4
Bien quand ça marche mais très sujet aux crashs.
olefevre

Cela ressemble à une application brillante, malheureusement, elle se bloque pour moi chaque fois qu'un courrier est reçu (exécutant smtp4dev sur win7, envoi à partir du script de courrier électronique de test de la messagerie de la base de données SQL Server)
Jona

Je viens de télécharger ceci pour tester le code d'envoi d'e-mails via SharePoint. Je n'avais pas installé SMTP sur mon virtuel, donc cette application a fonctionné comme un charme. Gloire!
Ryan

2
Pour ce que ça vaut, sous Windows 7 - 64 Bit, smtp4dev ne fonctionnerait pas mais papercut.codeplex.com l'a fait. Les e-mails étaient générés à l'aide de JavaMail.
Ashutosh Jindal

73

Il y a quelques années, je suis tombé sur la solution suivante pour la plate-forme .NET .

<system.net>
  <mailSettings>
    <smtp deliveryMethod="SpecifiedPickupDirectory">
      <specifiedPickupDirectory pickupDirectoryLocation="C:\TestMailMessages\" />
    </smtp>
  </mailSettings>
</system.net>

Placez simplement le code ci-dessus dans votre App.config ou Web.config. Lorsque vous envoyez un message maintenant, il sera stocké sous forme de fichier dans le répertoire que vous avez fourni en tant que "pickupDirectoryLocation". Fonctionne comme un charme.


3
Génial, aucune installation ... fonctionne très bien pour moi. Merci!
WildJoe

J'utilise SmtpClient dans une application Web .Net avec un hôte smtp spécifique défini au moment de la compilation. Je ne vois aucun changement de comportement basé sur l'ajout de ceci à la fin de mon web.config.

4
Ah! Lève une exception sauf si vous créez le dossier au préalable. Joli tour!

1
Petit truc génial avec aucune installation.
Mike Kruger

Nous avons eu le même problème lorsque nous travaillions avec une pile .NET - nous avons fini par créer ce service pour résoudre le problème
isNaN1247

18

Il existe maintenant une version Web de Papercut.

De plus, la version basée sur l'application fonctionne très bien pour moi.


14

Dumbster pourrait être ce que vous voulez alors. C'est un faux serveur SMTP open source écrit en Java. Il prend la place d'un vrai serveur SMTP, vous pouvez donc tester votre application dans un cadre réaliste, sans avoir de code écrasé. Vous pouvez vous assurer que les bons messages sont envoyés au serveur SMTP sans réellement remettre les messages.



6

Il y a aussi Papercut et Neptune , dommage qu'aucun de ceux-ci ne puisse fonctionner de manière portable.


J'ai finalement essayé ces derniers. Malheureusement, les deux continuent de planter.
Patrick McElhaney

4
Je viens d'essayer Papercut. Fonctionne très bien et a l'avantage de pouvoir afficher l'e-mail directement dans l'interface utilisateur.
Jeremy Wiebe

1
Papercut fonctionne. Dommage que ce ne soit que Windows. Voudrais voir cette plateforme multiplateforme.
Wim Deblauwe

6

J'utilise "Test Mail Server Tool" de ToolHeap depuis des années.

http://www.toolheap.com/test-mail-server-tool/

C'est une application simple qui s'exécute dans votre barre d'état système et vide les e-mails dans un dossier. Il peut également être configuré pour ouvrir chaque e-mail dans votre programme de messagerie par défaut.


1
Également. Cela fonctionne juste.
Adaddinsane

5

si vous utilisez java, j'utiliserais Wiser : Wiser est un simple serveur SMTP que vous pouvez utiliser pour les applications de test unitaire qui envoient du courrier.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.