Mobile Application Testing is Generally Available for US1, US5, and EU sites.

Mobile Application Testing is not supported on this site.

Mobile Application Testing is not supported on this site.

Overview

Steps represent individually recorded interactions or assertions that you want to execute in your test. To define a step, click Start Recording and interact with the device as you would normally, or create a step manually by clicking Assertions or Special Actions.

Launch a device

To start recording and adding steps, select a device to launch a mobile app test from the dropdown menu and click Launch Device.

Select a device to run a mobile test on

Select Show only available devices. Available devices load faster to see the most available devices for shorter testing wait times.

Notifications

Click the green Device Connection Notification button in the Launch a device to start recording modal to enable notifications for when your device is ready and when your device is going to timeout because of inactivity.

Automatically recorded steps

Once you click Start Recording, Datadog automatically records any interactions you have with your device and displays them in the step list on the left.

To stop recording, click Stop Recording.

Manually added steps

In addition to automatically creating steps by interacting directly with your device, you can manually create steps (using assertions and special actions). You can also update steps by clicking into a previously recorded step or reorder steps by dragging them up and down the step list.

Assertion

Assertions allow you to validate the content displayed (or not displayed) within a particular section of your test flow.

Options for assertions in a mobile test

To create a step, select an assertion type:

Test an element’s content

Create this assertion step to have your mobile app test select a page element and check if it contains a specific value.

Test that some text is present on the active screen

Create this assertion step to have your mobile app test confirm that the text you specified in the Value field is present on the current page being recorded.

Test that some text is not present on the active screen

Create this assertion step to have your mobile app test confirm that the text you specified in the Value field is not present on the current page being recorded.

Special actions

In addition to automatically recording steps based on your device interactions, you can also manually create steps by clicking Special Actions.

Choose an action type to add an assertion step

Tap

Interacting with elements with a tap on your mobile application records a step.

Double tap

Interacting with elements with a double tap on your mobile application records a step.

Type text

Interacting with a text input field on your mobile application, adding a name, and setting a value records a step.

To see all available variables on manually added steps, type {{ in the input field.

Type Text step to use variables in mobile tests

To use a variable on automatically recorded steps, add a step name and specify the variable value to input the variable value while recording.

Scroll

Mobile app tests automatically scroll to the elements that need to be interacted with. In most cases, you do not need to add a scroll step manually. Use the scroll step when you need to trigger an additional interaction, such as an infinite scroll.

Specify the number of pixels you want the mobile app test to scroll vertically and horizontally.

Scroll step in a mobile test recording

By default, the Scroll step scrolls through the entire page. If you need to scroll on a specific element (for example, a specific <div>), click Starting Element and select an element you want the mobile app test to scroll on.

Press back

Interacting with the Back button below the mobile application records a step.

Wait

If you know that a page or page element takes more than 60 seconds to load, you can add a wait step with a max value of 300 seconds.

Recording a Wait step in a mobile test

By default, mobile app tests wait for a page to be fully loaded before performing a step or the next step with a timeout of 60 seconds. This additional time is systematically added to every run of your mobile app test’s recording.

Rotate device

Add a name to the step and select Portrait or Landscape mode.

Recording a Rotate Device step in a mobile test

Add a name to the step and enter a deep link URI.

Recording an Open Deep Link step in a mobile test

For more information about additional configuration in test steps, see Advanced Options for Mobile App Test Steps.

Subtests

You can run mobile app tests within other mobile app tests to reuse existing workflows up to two levels of nesting.

To use an existing mobile app test as a subtest, click Subtest, select a mobile app test from the dropdown menu, and click Add Subtest.

Select a mobile test to add as a subtest

In order to override variables from subtests in parent tests, ensure the variables created at the parent test level have the same names as the variables present in the subtest. A variable always uses the value that was first assigned to it.

For more information about advanced options for subtests, see Advanced Options for Mobile App Test Steps.

If it does not make sense for you to run your subtest independently, you can pause it. The test continues to be called as part of your parent test, and is not executed individually. For more information, see Reusing Browser Test Journeys Across Your Test Suite.

Manage step order

Instead of manually reordering new steps by dragging and dropping individual steps, you can set a cursor on a test step at a particular stage in your recording and insert additional steps.

  1. Hover over a recorded test step and click the Set Cursor icon. A blue line appears above your test step.
  2. Record additional test steps or add steps manually.
  3. When you complete adding additional steps above your tests step, click Clear Cursor to exit.

Further reading