Test end-to-end workflows that include validating that emails or SMS are sent, or extracting values out of the message to use elsewhere in the test.
It’s not uncommon for workflows to include more than just actions taken on your web application. In scenarios like new user registration, user invite workflows, and placing an order on a web storefront, validating that an email is sent, and interacting with that email is often essential to truly verify the workflow is working end-to-end.
Similarly, SMS messaging can also be a critical component for testing workflows like two-factor authentication.
Within Reflect, you can create tests that span web, email, and SMS interactions.
An Email Inbox is provisioned for you as part of your Reflect account.
This Inbox is special in that you can access it directly within the Reflect web app, and any email sent to the subdomain we’ve created for you will appear in this Inbox.
For example, if your subdomain is
example.email.reflect.run, then any emails send to an address that ends in
@example.email.reflect.run will appear in your Inbox.
This is handy because you may want to you use unique email address for every test.
In fact, it’s often useful to use entirely random email addresses in scenarios like sign-up flows where you can only register with a given email address once.
Your Inbox can be accessed via either the dropdown shown when hovering over your avatar on the top-right of the page, or by clicking “View Email/SMS Inbox” when creating or re-recording a test.
When executing an Email step, we will attempt to match it against any emails that are sent during the course of the test run. You can configure the Email step to match on at least one the following criteria:
In addition to displaying emails, the Reflect Inbox will also display any SMS messages associated with your Reflect account. SMS numbers are unique to your account, and can be provisioned by contacting Reflect Support.
Once you’ve initiated an action within your test recording that generates an email to your subdomain, click on the ‘View Email/SMS Inbox’ button to access the email. On this screen, you may optionally filter the Inbox by recipient and select your desired email on the list on the left to view it.
Reflect converts all HTML emails into plain text so that it’s easy for you to extract information from the email. Links will be converted to both a URL and text, and visual media like images will be removed. Typically when you’re interacting with an email you’ll want to extract a value to be used later in the test. This could be a verification code in a two-factor authentication scenario, or a confirmation link in new user registration scenario. To extract the value, simply hover over the paragraph of interest and click and drag to select your desired value from the paragraph. You can associate this value to either an existing variable (if for example you want to validate it matches a known value) or to a new variable (if, like in the verification code or confirmation link scenario, you want to use it in a subsequent test step).
To add a step to your test that waits for an SMS message, from the recording view, click the ‘View Email/SMS Inbox’ button and select the relevant SMS message. Hover over the section of the message you want to capture, and click-and-drag to select the text to extract, such as a verification code or URL, assign the value to a Variable, and click Save Definition.
Once you’ve extracted a value from your email, click Save and you’ll once again see the website under test. If you want to navigate to a URL that you’ve already extracted into a Variable, click on the address bar within the recording experience and then you’ll see an option to select the Variable that contains the URL you want to navigate to.
If you’ve extracted a verification code or something you otherwise want to input, first go through the steps manually within the test to input your value, then click on the Input step and associate the Input value to the Variable that contains the value from the email.