it-swarm.com.de

Wie kann man eine App entwickeln und testen, die E-Mails sendet (ohne das Postfach mit Testdaten zu füllen)?

Ich habe viele Apps, die E-Mails senden. Manchmal sind es ein oder zwei Nachrichten gleichzeitig. Manchmal sind es Tausende von Nachrichten.

In der Entwicklung teste ich normalerweise, indem ich meine eigene Adresse durch Empfängeradressen ersetze. Ich bin mir sicher, dass alle anderen das tun, bis sie es satt haben und eine bessere Lösung finden.

Ich habe überlegt, einen Dummy-SMTP-Server zu erstellen, der die Nachrichten abfängt und in einer SQLLite-Datenbank oder einer mbox-Datei oder was auch immer abspeichert.

Aber sicherlich existiert ein solches Tool schon? Wie testen Sie das Senden von E-Mails?

128

Ich hatte vor ein paar Wochen das gleiche Problem und schrieb folgendes: http://smtp4dev.codeplex.com

Windows 7/Vista/XP/2003/2010-kompatibler Dummy-SMTP-Server. Befindet sich in der Taskleiste und übermittelt die empfangenen Nachrichten nicht. Die empfangenen Nachrichten können schnell angezeigt, gespeichert und die Quelle/Struktur überprüft werden. Nützlich zum Testen/Debuggen von Software, die E-Mails generiert.

84
rnwood

Vor einigen Tagen bin ich auf die folgende Lösung für die .NET-Plattform gestoßen.

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

Fügen Sie einfach den obigen Code in Ihre App.config oder Web.config ein. Wenn Sie jetzt eine Nachricht senden, wird diese als Datei in dem Verzeichnis gespeichert, das Sie als "pickupDirectoryLocation" angegeben haben. Klappt wunderbar.

73
Joop

Es gibt jetzt eine webbasierte Version von Papercut.

Auch die App-basierte Version funktioniert gut für mich.

18
Adam Seabridge

Dumbster könnte das sein, was du dann willst. Es ist ein gefälschter Open-Source-SMTP-Server, der in Java geschrieben wurde. Es ersetzt einen echten SMTP-Server, sodass Sie Ihre App in einer realistischen Umgebung testen können, ohne dass Code gestrichen wird. Sie können sicherstellen, dass die richtigen Nachrichten an den SMTP-Server gesendet werden, ohne dass tatsächlich Nachrichten zugestellt werden.

14
Fredou

Dies ist ähnlich wie bei smtp4dev, außer dass es in Java implementiert ist, sodass es auch für Nicht-Windows-Entwickler funktioniert.

http://www.aboutmyip.com/AboutMyXApp/DevNullSmtp.jsp

9
txyoji

Ich benutze seit Jahren "Test Mail Server Tool" von ToolHeap.

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

Es ist eine einfache App, die in Ihrer Taskleiste ausgeführt wird und E-Mails in einem Ordner ablegt. Es kann auch so konfiguriert werden, dass jede E-Mail in Ihrem Standard-E-Mail-Programm geöffnet wird.

6
Adrian Clark

Es gibt auch Papercut und Neptune , schade, dass keines davon portabel ausgeführt werden kann.

6
Alix Axel

wenn Sie Java Ich würde Wiser verwenden: Wiser ist ein einfacher SMTP-Server, den Sie zum Testen von Anwendungen verwenden können, die E-Mails senden.

5
Persimmonium

Sie können auch netDumbster verwenden.

http://netdumbster.codeplex.com/

3
Carlos Mendible