Chapter 32. Case Study: E-Mail Addresses

“Beware of bugs in the above code; I have only proved it correct, not tried it.”

Donald Knuth

This study involves breaking down a complex test, which represents a complex business rule, into simpler tests. The simpler tests can decrease time in understanding and implementing the rule.


Almost every application that involves communication requires an e-mail address. When you enter an e-mail address, you should parse it to ensure that it is in a valid format. The process of verifying that an e-mail address is actually valid requires an exterior action, such as sending an e-mail to the address and checking that it was not rejected.

The testers for one company had a set of e-mail address examples ...

Get Lean-Agile Acceptance Test-Driven Development: Better Software Through Collaboration now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.