web-dev-qa-db-ja.com

メールを送信するアプリを開発およびテストする方法(誰かのメールボックスにテストデータを入れずに)

メールを送信するアプリがたくさんあります。一度に1つまたは2つのメッセージになることもあります。時にはそれは何千ものメッセージです。

開発では、通常、受信者のアドレスを自分のアドレスに置き換えてテストします。彼らがそれにうんざりして、より良い解決策を見つけるまで、それは他の誰もがすることだと確信しています。

メッセージをキャッチして、SQLLiteデータベース、mboxファイルなどにダンプするダミーのSMTPサーバーを作成することを考えていました。

しかし、確かにそのようなツールはすでに存在していますか?メールの送信をどのようにテストしますか?

128

私は数週間前に同じ問題に直面し、これを書いた: http://smtp4dev.codeplex.com

Windows 7/Vista/XP/2003/2010互換のダミーSMTPサーバー。システムトレイに座って、受信したメッセージを配信しません。受信したメッセージをすばやく表示、保存し、ソース/構造を検査できます。電子メールを生成するソフトウェアのテスト/デバッグに役立ちます。

84
rnwood

数年前、。NETプラットフォームの次のソリューションに出会いました。

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

上記のコードをApp.configまたはWeb.configに配置するだけです。メッセージを送信すると、「pickupDirectoryLocation」として指定したディレクトリにファイルとして保存されます。魅力のように機能します。

73
Joop

現在、PapercutのWebベースのバージョンがあります。

また、アプリベースのバージョンは私のためにうまく動作します。

18
Adam Seabridge

Dumbster はあなたが望むものかもしれません。 Javaで書かれたオープンソースの偽SMTPサーバーです。これは実際のSMTPサーバーの代わりになるため、コードをスタブすることなく、現実的な設定でアプリをテストできます。実際にメッセージを配信せずに、正しいメッセージがSMTPサーバーに送信されるようにすることができます。

14
Fredou

これはsmtp4devと似ていますが、Javaで実装されているため、Windows以外の開発者でも機能します。

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

9
txyoji

ToolHeapの「Test Mail Server Tool」を何年も使用しています。

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

システムトレイで実行され、メールをフォルダーにダンプするシンプルなアプリです。また、デフォルトのメールプログラムで各メールを開くように設定することもできます。

6
Adrian Clark

PapercutNeptune もありますが、これらはどれもポータブルな方法で実行できません。

6
Alix Axel

Javaを使用する場合 Wiser :Wiserは、メールを送信するアプリケーションのユニットテストに使用できる単純なSMTPサーバーです。

5
Persimmonium

NetDumbsterも使用できます。

http://netdumbster.codeplex.com/

3
Carlos Mendible