MailSlurp logo
Email and SMS integration testing for QA and CI

Integration testing with real messaging infrastructure

Validate sign-up, password reset, magic links, OTP, and notification flows using real inboxes and numbers under API control.

Trusted by top companies worldwide

  • Broadcom
  • Scraper
  • Trivago
  • Avast
  • Wolt
  • Panasonic

Integration testing capabilities

Build deterministic email and SMS tests around real message receipt

MailSlurp gives teams the primitives to provision channels, wait for messages, extract evidence, and assert the full journey in code.

Provision inboxes and numbers per test

Create clean email addresses and phone numbers for each suite, worker, or scenario so test runs stay isolated.

Explore

Wait APIs for matching email and SMS

Use latest-message and matching-message primitives to capture the real verification message without polling loops or fixed sleeps.

Explore

Extract links, OTP codes, headers, and attachments

Pull the exact message evidence your workflow depends on before asserting signed-in state, reset success, or notification correctness.

Explore

One API surface for email and SMS test evidence

Capture message receipt, links, OTP codes, headers, and attachments from both channels without splitting the test stack.

Explore
MailSlurp product screenshot

Wait for the latest verification email in the same test

Trigger signup, block on the incoming message, extract the verification code, and complete the browser flow without leaving the test run.

MailSlurp product screenshot

Validate email and SMS in one pipeline

Assert links, codes, and message state transitions for signup, recovery, and MFA paths.

MailSlurp product screenshot

Integrate with your existing test stack

Use SDK methods and helper utilities from UI tests, API tests, and contract checks.

Developer integration

Wait for the latest verification email inside Playwright

Create a fresh inbox, trigger the user flow, then use MailSlurp wait APIs to capture the message, extract the code, and finish the journey in one test.

  • Provision a clean inbox for each test run or worker
  • Replace sleep-based retries with `waitForLatestEmail`
  • Extract verification codes and links before asserting the signed-in state

Next step

Start with signup or docs

Use the free account to validate the workflow in your own stack, then move into implementation details in the docs.