Email testing guides

Hands-on email testing guides for developers and QA teams

A happy developer at a laptop says the confirmation email is tested too, next to a terminal showing three passing Playwright tests.Developer Guides

Email Testing with Playwright: Sign Up, Read the Inbox, Click the Link

A step-by-step Playwright Test guide for email flows: catch every email with Mailpit, give each test its own address, follow the confirmation link and check that the user ends up signed in.

October 28, 2026·10 min read
Read article →
A tester at a laptop says goodbye to cy.wait(10000); a code card shows it crossed out and replaced by cy.waitForEmail.Developer Guides

Cypress Email Testing: Check Sign-Up Links and OTP Codes with Mailpit

Catch your app's test emails in Mailpit, wait for them with cy.request instead of fixed sleeps, pull out the link or one-time code, and follow it, even when it points to another domain.

October 28, 2026·10 min read
Read article →
A developer at a desk with two code cards side by side: the same sign-up email test in Python with pytest and in Java with JUnit.Developer Guides

Selenium Email Testing: Sign-Up and Verification Links with Python and Java

Selenium can fill in your sign-up form, but the verification email lives outside the browser. This guide shows how to catch it with Mailpit, wait for it properly, and finish the flow in Python and Java.

October 28, 2026·10 min read
Read article →
A puzzled tester looks at a sign-in email; the order number and the year are crossed out and the six-digit code is circled.QA Testing

Reading OTP Codes from Emails in Automated Tests (Without the Flakiness)

Email one-time codes are easy for people and surprisingly tricky for test scripts. Here is how to extract the right code every time, wait for the newest email only, and run it all in CI.

October 28, 2026·10 min read
Read article →
A tester wonders if a verification link still works tomorrow, next to a sticky note checklist: arrives fast, right server, works once, expiry.QA Testing

How to Test Email Verification: What to Check, by Hand and in Code

Email verification looks like one click, but behind it sit a token, an expiry time, a resend button and a link that must point at the right server. Here is what to test, how to do it by hand, and how to automate it.

November 12, 2025·10 min read
Read article →
A worried tester asks if an old reset link still works, next to a key and a sticky note of password reset test cases.QA Testing

How to Test Password Reset Flows: Security Test Cases That Matter

Password reset is a back door into every account, so it deserves more than one happy-path click. Here are the security test cases we run, with steps, expected results and code.

January 7, 2026·11 min read
Read article →
A tester at a laptop with four browser tabs labeled Owner, Admin, Member and Viewer, each with its own invite and role check.QA Testing

Testing Invites, Roles and Approvals: One Inbox per Test User

Invites, roles and approvals break in the gaps between users. Here is how to test them with one inbox per test user, a clear role matrix, and a Playwright script that drives several users at once.

July 12, 2026·11 min read
Read article →
A tester with a Stripe test card and a sticky note listing the emails to read: welcome, receipt, payment failed and goodbye.QA Testing

Testing Sign-Up to Payment End to End: Trials, Stripe Test Cards and Every Email

Follow one test customer from sign-up through a trial, a Stripe test payment, a failed renewal and a cancellation, and learn what to check in every email your app sends along the way.

July 24, 2026·10 min read
Read article →
A tester says the email looked fine on a laptop, while a phone in dark mode shows an unfilled first-name variable and a missing logo.QA Testing

How to Test Transactional Email HTML: Links, Images, Dark Mode and Mobile

A password reset email can pass every unit test and still ship a localhost link, a missing logo or "Hi {{first_name}}". Here is what to check by hand and how to automate the rest.

October 28, 2026·10 min read
Read article →
A developer next to code that creates a random token with an expiry, and a note listing what never to do: Math.random, verify on GET, endless resends.Developer Guides

How to Build Email Verification: Tokens, Expiry, Resends and Tests

Email verification looks like a one-afternoon feature, but most of the bugs hide in tokens, expiry, resends and link scanners. Here is how to build it carefully in Express, and how to test it end to end.

December 17, 2025·10 min read
Read article →
A worried developer says users never got the email; a sad envelope lands in the spam folder while the inbox stays empty.Email Deliverability

Why Your App's Emails Land in Spam: Causes, a Debugging Checklist and Fixes

Sign-up and password reset emails that land in spam cost you real users. Here are the usual causes, a step-by-step checklist for finding yours, and three examples with their fixes.

December 24, 2025·10 min read
Read article →
A puzzled developer asks why the email went to spam; a sticky note shows Gmail's checklist with SPF and DKIM passing and DMARC failing.Email Deliverability

SPF, DKIM and DMARC Explained: Real Records, dig Checks and Common Mistakes

Three small DNS records decide whether Gmail and Outlook trust your app's email. Here is what SPF, DKIM and DMARC each prove, how to check them with dig, and the mistakes we see most often.

October 15, 2026·11 min read
Read article →