MailSlurp logo

A Mailosaur alternative for every step of the message journey.

Test email and SMS, inspect the received content and review real-client previews. MailSlurp keeps your customer-flow checks together.

Separate envelope symbols for independent test inboxes

Trusted by teams at

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

Follow the message all the way to the inbox.

Trigger a signup, password reset or order confirmation in your app. Receive the actual email in MailSlurp and inspect its subject, sender, body, headers and attachments. A successful API response is only the start of the journey.

Explore end-to-end email testing
Envelope and custom-domain email address symbols
Separate envelopes for independent test inboxes

One inbox per test

Create separate email addresses for test users and parallel runs. Match each message to the inbox your test created.

An email and hourglass representing a wait for delivery

Wait for the right message

Use wait APIs and message filters to retrieve the expected email within a defined timeout.

Playwright, Cypress, Selenium and k6 testing logos

Finish the customer journey

Extract the verification code or reset link, return to your app and check the next screen.

Email and SMS. One complete test.

A customer can sign up by email and verify a phone number in the same session. Give your test an inbox and a phone number, receive both messages and check the code before continuing.

Use MailSlurp with Playwright, Cypress, Selenium or your existing test runner. Keep the received message available when a failed run needs investigation.

Explore SMS testing
Phone, envelope and verification symbols

Make sure the email works for the person opening it.

An automated assertion can confirm the link exists. Device previews show how the delivered email looks, and Email Audit checks for broken links, missing images and content issues before a release.

See real-client previews
Email previews on mobile, tablet and desktop clients

How to run your first end-to-end check

Create a test identity

Create an inbox for the test user, then enter its address in your application's signup or password-reset form. Use a separate inbox for each parallel run.

Receive and inspect the message

Wait for the expected email. Check the recipient, subject and content, then extract the code or URL your customer needs. The email testing guide covers the workflow.

Complete the action and repeat

Submit the code or open the link in your test session. Assert the application outcome, retain useful failure evidence and add the check to your normal test suite. Start with our Playwright email testing guide.

Move one test before moving the whole suite.

Start with the received message

Start with one signup test. Install mailslurp-client and store your MailSlurp API key in your CI secret store. Call createInbox(), enter the returned emailAddress in your application's signup form, then call waitForLatestEmail(inbox.id, 30000, true). Assert the received subject and body before following the verification link in your application.

Map response fields before adding more tests

Give each parallel test its own inbox and call deleteInbox(inbox.id) in a finally block so failures still clean up. Keep your existing assertions for the signed-in page or completed password reset: receiving an email is only part of the test. Follow the Playwright email testing guide to run the same flow locally and in CI, then migrate SMS and attachment checks one at a time.

Questions before you switch?

What should I map when moving a test suite to MailSlurp?

Start with inbox creation, message waiting, content retrieval and cleanup. Replace those steps in one representative test, keeping the application assertions intact. Check the recipient, extract the expected code or URL and confirm the final state. Repeat with an attachment and an SMS flow if your suite uses them before migrating the remaining scenarios. Review the MailSlurp testing workflow.

Can I use my existing test runner?

Yes. Use MailSlurp APIs or SDKs to create inboxes, wait for messages and retrieve codes or links from Playwright, Cypress, Selenium or another test runner. Complete the action in your application and assert the final state.

Can I test SMS and the appearance of an email too?

Yes. Add phone numbers and SMS checks for verification flows, and use device previews to inspect the delivered email on supported clients. Current plans show the allowances for each capability.

Make the next release a checked one.

Create a test inbox and complete your first email journey.

Email previews across mobile and desktop clients