Isolate identities
Use a new address for every test round to prevent old messages, verification codes, or read states from causing interference.
Give every test case its own address, trigger a real send, then record acceptance results for delivery time, template language, verification codes, and destination links.
An email that appears to have arrived is not a complete acceptance check. Your team should define acceptable delays, code lifetimes, link environments, template languages, and mobile rendering so failures can be traced to the exact point of deviation.
Use a new address for every test round to prevent old messages, verification codes, or read states from causing interference.
Complete the business action through the real UI or API instead of bypassing the queue and calling the email service directly.
Check the sender, subject, variables, plain-text fallback, button links, and localization.
Record event times, the message ID, screenshots, and the environment to make defect regression easier.
Do not test only the first successful attempt. Email identity often connects to rate limits, state machines, and security policies, while edge cases are more likely to reveal duplicate sends or incorrect templates.
| Flow | Minimum test cases | Content checks | State checks |
|---|---|---|---|
| Signup confirmation | First attempt, duplicate email, expired link | Greeting, confirmation button, environment domain | Single use, expiration message |
| Login verification code | Correct, incorrect, resent, rate-limited | 6-digit code, validity period, device notice | Previous code invalidated, cooldown countdown |
| Password reset | Existing and nonexistent accounts | Security wording, reset link | Account enumeration protection, link revocation |
| Workflow notification | Success, failure, partial success | Task name, numbers, target environment | Deduplication, retries, delay |
At 320–390px wide, check long subjects, button copy, verification-code blocks, and URLs. Key information must not be clipped horizontally.
Disable images or view the text/plain version to confirm that verification codes, links, and support information remain complete and understandable.
Match the account language to the template language one by one, checking that dates, punctuation, and variables have not fallen back to English.
Email issues span the business application, queue, provider, and receiving system. Without timestamps and unique identifiers, teams can only keep guessing.