6


4

asp.netメールの送信方法をテストする方法

asp.netにメールを送信するコードがあります。

public void SendEmail(string message)
{
    var body = message;

    var email = new MailMessage(ConfigurationManager.AppSettings["SenderEmail"],
                            ConfigurationManager.AppSettings["RecipientEmail"],
                            "Email Test", body);

    var client = new SmtpClient();
    client.Host = Properties.Settings.Default.smtp;
    client.DeliveryMethod = SmtpDeliveryMethod.Network;
    client.Credentials = CredentialCache.DefaultNetworkCredentials;

    client.Send(email);
}

これをテストする方法を知りたいです。 単体テストであろうと統合テストであろうと、私は本当に気にしません。 私はこれをあざけりたくありません。 私は実際に、正しいメッセージでメールが送信されるというテストを書きたいと思っています。

誰かがこれを手伝ってくれる?

7 Answer


13


c:/ドライブに「maildrop」というフォルダーを作成し、Web.configファイルで次を使用します。


詳しくは:


2


自分にメールを送信して、受信したかどうかを確認しますか?

その方法がわからない場合は、基本に戻ってください。


0


これをモジュール内に配置し、テストから呼び出して、受信者に自分がメールアドレスだと言うように設定することはできません。 メールを受け取ったら、それが機能していると思います。


0


自動テストを設定するには、クエリ可能なサーバーにテストメールアドレスを設定する必要があります(トピックはasp.netであるため、Exchangeサーバーを想定しています)。次に、使用するメールのメールボックスをクエリします:

オプション1:SDKを交換する

オプション2:Webリクエストを使用(Exchangeサーバーのhttpコネクタが有効な場合

オプション3:独自の単純なpop3 client / cli / apiを作成する

opt 3の参照:http://www.codeproject.com/KB/IP/popapp.aspx


0


承認テストで結果のメールをテストする非常に簡単な方法があります。 メソッドを2つのメソッドに分ける必要があります。1つはメールを作成し、もう1つはメールを送信します。 その後、電話をかけることができます。

EmailApprovals.Verify(mail)

ここにプロセスを示すビデオがあります:http://www.youtube.com/watch?v=Sf16dPq2n3w


0


SMTP4Devを使用できます

インストールするだけです(タスクバーで実行される小さなプログラムです)。 開発プログラムの終わりから構成する必要はありません…​

デフォルトでは、ローカルホストでリッスンするため、コードを変更せずに動作するだけだと思います。

メールを送信すると、タスクバーのポップアップ通知が表示されます…​ 通知をクリックして、メールの実際の内容を確認してください!