Tuesday, 20 September 2011

Running out of email addresses when you test?

I generally test web apps. And Web apps generally use an email address as the unique identifier. So by test number 2, some of you may have run out of email addresses to test with.
If this happens to you, don’t panic! Because here are the Evil Tester hints and tips for getting more email addresses than you probably ever wanted, but as a tester, have always needed.

Tip #1 – Go Disposable

This used to be my default approach. Pick a mad mailinator address that no-one would ever use and then I’m off and testing.
This works really well when you don’t really care about the privacy of the emails.
http://en.wikipedia.org/wiki/Disposable_e-mail_address
For a list of disposable providers you can check here - http://www.email-unlimited.com/stuff/temp-email-address.htm

Tip #2 – Hack your email address

Gmail has some well known hacks for getting more value out of your email address.
  • + addressing, where you add +somethingunique to your gmail address
http://lifehacker.com/software/top/instant-disposable-gmail-addresses-144397.php
  • become mr.l.o.t.s.of.d.o.t.s gmail ignores the . in your email name before the @ so you can stick them in and get unique email addresses.
Other email hosts allow these strategies too, but I’ve only tried this on Gmail. Where have you tried it?

Tip #3 – use 33mail.com

I’ve started using the free services from 33mail.com.
You sign up, get a username then start sending mail to someone@username.33mail.com, someoneelse@username.33mail.com etc.
The emails get redirected to an email address of your choosing.

Tip #4 - Buy Your Own Domain you Cheapskate

When you register a domain name, many hosting companies give you a ‘single’ email address with the domain. What they actually mean is a single mailbox. Where anything @yourdomain gets routed to that mailbox. This effectively gives you unlimited email addresses.
If you want to do automated testing with the email, this may well turn out to be the best route to go down.

Any tips? How do you do it? Please leave a comment so that I, and the other visitors can learn from you.


Update April 2015

Vitaly Pryakhin "wrote an application, that allows to create disposable mailboxes locally. Thought you might be interested. It can be installed on a VPS and substitute public disposable mailbox services, like mailinator.com. The application is simple and UI looks somewhat raw, although it is stable and has all basic functionality. It already saved me a lot of time. I'm going to continue working on QA Mail it and implement new features." https://bitbucket.org/naushniki/qamail

8 comments:

  1. You could add a filter to the mail server in your test environment to redirect outgoing email to a different address e.g. redirect all email to your own email address. Then you could use any email address as an id.

    Another option is to connect your app to a fake mail server that does not deliver emails to users but rather stores them for later verification e.g dumbster

    ReplyDelete
  2. Good ideas, thanks for commenting Andrew.

    I had not come across dumbster before http://quintanasoft.com/dumbster/

    ReplyDelete
  3. The company that I work for (Clockwork Active Media Systems) has given the testers some love by letting us use a plus address setup for our emails in-house. This helps keep some of the more sensitive projects in house instead of having to use any one of the solutions above.

    However, we have to be careful since there are some projects that we test that require the need for email normalization (sweepstakes, games for points, etc).

    However, you missed a solution:

    Gmail ignores .'s in an email address (myemailaddress@gmail.com == my.email.address@gmail.com) so you could use that setup for those systems that aren't normalizing

    ReplyDelete
  4. Thanks for helping make the post clearer Dez.
    Good to see people putting the effort in to in-house solutions.

    ReplyDelete
  5. Similar to your last suggestion, a company I worked for set up a subdomain for us such that anything@qa.domain.com was forwarded to a gmail account that we could all access.

    ReplyDelete
  6. Good to hear, thank Scott

    ReplyDelete
  7. Gmail (and a variety of other systems) allow you to add a +xxx before the @ to make a unique address

    myname+001@gmail.com
    myname+002@gmail.com

    This gives you an infinite number of email addresses at one address. I generate a date/time based number for this so they are always pretty much unique and I can work out when it was used :-)

    Unfortunately some websites and systems decide that '+' is an invalid character to have in an email address which mess you up.

    ReplyDelete
  8. Thanks for helping clarify the gmail approach Martin. We certainly do use this in our automation - amending YYYYMMDDHHmmss format to our email addresses.

    And I was sent through another link that might help others with their testing:
    * http://code.google.com/p/subethasmtp/

    With another nod towards
    * ... the much more bare bones solution: http://quintanasoft.com/dumbster/

    ReplyDelete