Come sviluppare e testare un'app che invia e-mail (senza riempire la cassetta postale di qualcuno con i dati di test)? [chiuso]


129

Ho molte app che inviano e-mail. A volte sono uno o due messaggi alla volta. A volte sono migliaia di messaggi.

In fase di sviluppo, di solito collaudo sostituendo il mio indirizzo per qualsiasi indirizzo del destinatario. Sono sicuro che è quello che fanno tutti gli altri, fino a quando non si stufano di questo e trovano una soluzione migliore.

Stavo pensando di creare un server SMTP fittizio che cattura i messaggi e li scarica in un database SQLLite, in un file mbox o altro.

Ma sicuramente un tale strumento esiste già? Come testate l'invio di e-mail?


42
@casperOne Perché chiudere questa domanda tre anni e mezzo dopo? È un problema semplice con una manciata di soluzioni utili. Non c'è stato alcun dibattito, sondaggio o discussione estesa. Se questa pagina scomparisse dai risultati di ricerca di Google, migliorerebbe Internet?
Patrick McElhaney,

1
È una domanda di lista della spesa / raccomandazione di prodotto (e anche intrinsecamente soggettiva e aperta: "come testare l'invio di e-mail"), nessuna delle quali è più adatta al sito.
casperIl

3
@casperOne Quindi riformulare la domanda in modo che non sia così soggettiva. Non cercavo il miglior prodotto nella categoria X. Stavo chiedendo se esiste la categoria X. Comunque, non hai risposto alla mia domanda. Convincimi che rimuovere questa pagina renderebbe migliore Internet e lo eliminerò da solo.
Patrick McElhaney,

12
@casperOne Mi sono imbattuto in questa domanda da Google chiedendo delle opzioni basate su Windows (al contrario delle opzioni di Linux a cui avevo precedentemente esposto). Ho trovato tutti i link utili. Questa pagina web ci mancherà molto.
justin.lovell,

5
Bene, stavo solo cercando uno strumento di Windows Mail Server che prenda le e-mail da localhost e l'ho trovato semplice e facile da questa domanda. La risposta votata è tutto ciò che la maggior parte delle persone sta cercando, quindi non riesco a capire perché vuoi chiudere questo dato che fa ciò che la maggior parte delle persone si aspetta.
sveri,

Risposte:


84

Ho riscontrato lo stesso problema alcune settimane fa e ho scritto questo: http://smtp4dev.codeplex.com

Server SMTP fittizio compatibile con Windows 7 / Vista / XP / 2003/2010. Si trova nella barra delle applicazioni e non recapita i messaggi ricevuti. I messaggi ricevuti possono essere rapidamente visualizzati, salvati e la fonte / struttura ispezionata. Utile per testare / eseguire il debug di software che genera e-mail.


+1 Un piccolo errore ma l'overrall fa ciò di cui ha bisogno. Grazie!
David,

4
Bello quando funziona ma molto soggetto a crash.
Olefevre,

Sembra un'app geniale, purtroppo si blocca ogni volta che viene ricevuta una mail (in esecuzione smtp4dev su win7, invio dallo script di posta elettronica Test posta elettronica database SQL Server)
Jona

Ho appena scaricato questo per testare l'invio del codice e-mail tramite sharepoint. Non avevo SMTP installato sul mio virtuale, quindi questa app ha funzionato come un fascino. Complimenti!
Ryan,

2
Per quello che vale, su Windows 7 - 64 Bit, smtp4dev non funzionerebbe, ma papercut.codeplex.com ha funzionato. Le mail venivano generate usando JavaMail.
Ashutosh Jindal,

73

Qualche tempo fa ho trovato la seguente soluzione per la piattaforma .NET .

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

Basta inserire il codice sopra in App.config o Web.config. Quando si invia un messaggio ora, questo verrà archiviato come file nella directory fornita come "pickupDirectoryLocation". Funziona come un fascino.


3
Fantastico, zero installazione ... funziona benissimo per me. Grazie!
WildJoe il

Sto usando SmtpClient in un'applicazione Web .Net con un host smtp specifico impostato al momento della compilazione. Non vedo alcun cambiamento nel comportamento basato sull'aggiunta di questo alla fine del mio web.config.

4
Aha! Genera un'eccezione a meno che non si crei prima la cartella. Bel trucco!

1
Fantastico piccolo trucco con zero installazione.
Mike Kruger,

Abbiamo avuto lo stesso problema lavorando con uno stack .NET - abbiamo finito con la creazione di questo servizio per risolvere il problema
isNaN1247

18

Ora esiste una versione web di Papercut.

Anche la versione basata sull'app funziona bene per me.


14

Dumbster potrebbe essere quello che vuoi allora. È un server SMTP falso open source scritto in Java. Prende il posto di un vero server SMTP, quindi puoi testare la tua app in un'impostazione realistica, senza che sia stato rimosso alcun codice. Puoi assicurarti che i messaggi giusti vengano inviati al server SMTP senza consegnare effettivamente i messaggi.



6

C'è anche Papercut e Nettuno , peccato che nessuno di questi possa essere eseguito in modo portatile.


Finalmente sono riuscito a provare questi. Sfortunatamente, entrambi continuano a bloccarsi.
Patrick McElhaney,

4
Ho appena provato Papercut. Funziona alla grande e ha la funzione bonus di poter visualizzare l'e-mail direttamente nell'interfaccia utente.
Jeremy Wiebe,

1
Papercut funziona. Peccato che sia solo Windows. Mi piacerebbe vedere questa multipiattaforma.
Wim Deblauwe,


5

se stai usando java userei Wiser : Wiser è un semplice server SMTP che puoi usare per le applicazioni di testing delle unità che inviano posta.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.