2012-10-05 12 views
16

ユーザーが登録確認メールを受信したかどうかを確認するための統合テストを書きたいと思います。統合テスト用の一時的な電子メールアカウント

理想的には、この目的のために、私は希望:

  1. は一時的な電子メールアカウントを作成します。
  2. 登録用紙に記入してください。
  3. メールが届いていないか確認してください。
  4. 電子メールアカウントを削除します。

シンプルなAPIを提供する使い捨ての電子メールアカウントはありますか?私は何も見つけることができませんでしたが、既存のものはかなり簡単に要求を解析/作成することができます(例えばhttp://10minutemail.com/)。

これはいい考えですか?代わりに、この目的のためにいくつかのGmailアカウントと使用タグを使用しています。しかし、迷惑メールフォルダや他のフォルダなどのmsgを扱うのは少し複雑です。

+0

電子メールの送信の有無をテストする場合、作成したテスト電子メールを使用するだけではなく、一時的な電子メールを作成する必要があるかどうかはわかりません。 –

+0

mailtrap.ioはRESTFUL APIを提供します。 –

+0

はhttp://sqa.stackexchange.com/に属します – Nakilon

答えて

11

http://mailinator.comはPOP3に対応しています。

任意のユーザー名でPOP3経由でサーバーに接続し、電子メールをチェックします。

+3

を提供していません。http://mailinator.blogspot.co.uk/2013/05/mailinator-is-for-humans htmlの –

2

Linuxマシンで実行している場合は、既に電子メールサービス([email protected] ... [email protected])が実行されており、電子メールスクリプトをテストするのにはちょっとです。

依存性注入を使用してモックメーリングクラスを作成して、最後の段階ではなく統合テストを適切に行うことができるようになると、なぜこれを自動化するのが難しいのか分かりません電子メールを送信するには、コンテンツをファイルやデータベースに書き込むだけで、ガベージコレクションの前に十分に長い間モックオブジェクト内に存続します。

5

私はこの質問には、比較的古いです知っているが、これは非常によくあなたの目的に合った:

  • メールが60分
  • カスタマイズ可能な仮のメールアドレスの後に削除され

    • 使い捨てのメールアドレスダッシュボード

    私はそれを使用しています電子メールをテストしたり、一度だけ使用するサービスにサインアップしたりする際に、電子メールの検証が必要になります。

    非常にお勧めします。

  • 11

    あなたは自分のメールアドレスに+somethingを追加し、Gmailからメールをテストすることができます:

    [email protected]

    あなたが通常の状態にお届けしますテストアカウントを持つことができますGmailアドレス:

    myemail + testuser1 @ gmailcomの

    [email protected]

    +4

    なぜdownvote?試してみてください。/ – MaKo

    +2

    これは有効な回答です。実際に試してみると、テスト目的で複数の電子メールアカウントを使用することができます – fablexis

    +0

    実際のアドレスを明らかにすることが目標である場合、これは失敗します。 – tripleee

    3

    あなたはAPIとQA/QCエンジニアのための特別なサービスを使用することがあります。

    記事で読むことができますhttp://railsware.com/blog/2012/06/18/remove-qa-headache-while-testing-email-delivery/

    +0

    私はリングにもMailHogを投げるだろう。これらのサービスのDockerイメージを調べることもおすすめします。 Dockerを使用すると、セットアップが簡単になり、次のテストのためにリセットするだけで、コンテナが再作成されます。 Dockerでアプリケーションを実行する必要はなく、メールサーバーを実行するだけで済みます。 –

    関連する問題