HeadSpin Documentation
Getting Started
HeadSpin Platform
API Reference
Mini Remote
Biometrics SDK
Performance Analysis
Performance Monitoring
On-Premise Deployments
Deprecated Documentation
Legal Matters

Remote Functional Testing



Remote Functional Testing

HeadSpin Remote Functional Testing™ gives you access to devices connected to mobile networks around the world right from your web browser. It seamlessly integrates into your existing workflow and allows you to test your app without requiring code changes.


  • Create an account and we will send a confirmation link to your email address.
  • If you don’t receive a confirmation email, please check your spam folder.
  • Once you create an account, you can access HeadSpin via: https://ui-dev.headspin.io/


select location

In the example above, currently devices are hosted in 2 locations.


Different Device Types and Carriers listed.

When Status link is present, the device can be used.


During your trial of HeadSpin, you have access to HeadSpin Remote Functional Testing, our browser based interface for testing your app around the world. HeadSpin RemoteControl transforms your browser into mobile devices for remotely controlling mobile devices around the world. Whatever you can do with a device in your hand, you can do with HeadSpin RemoteControl.

Remote Functional Testing

App Navigation Tabs:

  • Host List Tab: When you open HeadSpin Remote Functional Testing, the first area you will see is a list of locations. These are the testing locations available to you during your trial (many more locations are available for HeadSpin customers).
  • Device List Tab: Within the Device List area, you will find all of the devices that are available to you during your trial. If you prefer to select a specific device to test on, you can choose a device from the Device List. Once a device has been selected it will be add to your device tray in the Controller View.
  • Controller View Tab: The Controller View tab is where you interact with real mobile devices. This tab is where you run manual tests and connect to ADB for automated testing.

Host List Tab:

The Hosts tab shows you all locations where you currently have access to mobile devices. Each row represents a host, and hosts are grouped into regions.

  1. Country Flag: On the left of each row is the country flag, the city/country name, and an icon representing OS type at this host (Android or iOS).
  2. # of Devices: The numbers in each row indicate how many devices are at this host in total, how many are currently available, and how many are currently busy (e.g. in use by other people in your organization).
  3. Host Notes: Network connectivity varies all over the world. In the notes section, our support team will leave messages for you about the network status of each host. As a team admin, you can leave messages for your teammates here too
  4. View Devices: Click on a "View Devices" button to see the devices at a host. Then we'll move on to the Device List tour.

Device List Tab:

The Devices tab shows you the devices you have access to at HeadSpin hosts. From here, you can search for devices, start using devices, and add devices to your tray for quick use in the future.

  1. Device: Each row in the list represents a single device. Available info includes the device's location, model, carrier, operating system, and current connectivity.
  2. Select Column: The Select Columns dropdown lets you customize which columns are visible to you in each device row. Some columns are hidden by default.
  3. Search Devices: The Search Devices input lets you search for specific devices. You can search by location, model, carrier, OS, device note, or any other column you can see.
  4. Start Using a Device: Click on one of the Start Using buttons to begin controlling a device. Then we'll move on to the Remote Control tour.

Controller View Tab:

The Controller View tab is where you interact with a real mobile device. From here, you can send touch and keyboard events to the device, upload APKs, and connect a remote device to your local ADB.

  1. Device Screen: On the left is a real-time, interactive view of the connected mobile device. Click and drag to send touch events to the device, and use your computer's keyboard to type into mobile text inputs.
  2. Device Tools: On the right are additional tools for controlling the device. From here you can quickly open a URL in the default web browser, drag and drop to upload and install an APK, or paste and run the adb connect command to connect your local adb.
  3. Stop Using Button: When you are done using a device, click on the Stop Using button in the Device Tray at the bottom of your screen. Then we'll move on to the Device Tray tour.

Device Tray:

The Device Tray keeps track of devices you've used and are using. From the tray, you can quickly start or stop sessions on multiple devices, and you can open up two devices to use side by side at the same time.

  1. Add Devices to the Tray: Click on a plus button to add a device from the Device List to the tray.
  2. Using Multiple Devices: Click on a device card in the tray to start using it. Click on another card to put another device in use. As you toggle between devices, notice that each device stays in use until you click on Stop Using. Keep in mind that while you are using a device, no one else on your team is able to use that same device.
  3. Using Multiple Devices Side by Side: Make sure you already have a device open, then hover over a device card and look for three grey buttons to appear at the bottom of the card. To open a second device, click on either of the two grey buttons to the left and right of the flashing center button. When two devices are open at the same time, the Device Tools panes are hidden.
  4. Stop Using Multiple Devices: When you are done using devices, click on any visible Stop Using buttons to free them up for use by other people on your team.


All HeadSpin Android devices have Android Debug Bridge (ABD) built in. ADB is a versatile command-line tool that lets you communicate with a HeadSpin device remotely. The adb command facilitates a variety of device actions, such as installing and debugging apps, and it provides access to a Unix shell that you can use to run a variety of commands on a device. For more info on Android Debug Bridge, see the Android Documentation: here.

How to connect an Android device:

1. Open the HeadSpin Remote Functional Testing app.

2. Once in, just select the Country you want to test in.

select country

3. And then simply select the device

select device

4. Here you can interact with a live phone and test your phone. If you need ADB command line access, navigate to the tools palette on the right hand side.

remote debug

5. Find the tool palette called “Remote Debug”. Run the command that appears in the input field. In the example below, you would run:

<code class="dcode">$ adb connect us-sv.headspin.io:11377</code>

6. A Dialog will appear, click on “Add Key”. Now you will be connected to the location host.

add adb key

7. To list the connected device information, use the command:

<code class="dcode">$ adb devices -l</code>

8. The connected device will appear.

<code class="dcode">us-sv.headspin.io:11377 device product:bullhead model:Nexus_5X device:bullhead</code>