UI でのユーザーの更新によってトリガーされる電子メール通知を送信する Java アプリケーションがあります。メッセージを受信する方法を探して、電子メールが正常に送信されたかどうかを確認する JUnit テスト ケースを作成しようとしています。
Dumbsterは、テスト プログラム自体で電子メールを送信し、受信することを意図しているため、私には機能しませんでした。
この機能をテストするにはどうすればよいですか? 助けてくれてありがとう。
-ヴァディラジ。
まず第一に、単体テストではなく統合テストについて話しているように聞こえます。
ワンタイムセットアップ:
Google はロボット検出を使用しているため、これらの手順を自動化するのは困難です。
テストケース:
gmail の問い合わせを非常に簡単にする優れた Java-imap ライブラリがいくつかあります。クイック検索で明らかになったのは次のとおりです。
http://harikrishnan83.wordpress.com/2009/01/24/access-gmail-with-imap-using-java-mail-api/
ダムスターの目的は、外部の電子メール サーバーをスタブ化することです。
これで十分でない場合は、電子メール サーバーとネットワーク インフラストラクチャの機能をテストしようとしている可能性があります。
これは、実稼働の電子メール サービスとネットワーク インフラストラクチャを使用している場合にのみ意味があります。テスト環境では構成が異なる可能性があるためです。
これが良い考えだと確信しているなら、@Lithiumの提案アプローチは理にかなっています。
テスト環境用の開発用メール サーバーがあり、テスター向けにシタデルで使用して、送信されるメールを確認できるようにしています。このテストを書くつもりなら、Google に頼るのではなく、内部メール サーバーを使用します。